php
  • html
  • mysql
  • fwrite
  • 2013-10-12 36 views -1 likes 
    -1

    你好,我有點麻煩讓這段代碼工作。PHP的fwrite和sql查詢不起作用

    <?php 
    $filename = "test.php"; 
    $filehandle = fopen($filename, 'a') or die("can't open file"); 
    $test= 
        ' 
         $conn = mysql_connect("server", "username", "password") or die (mysql_error()) ; 
         mysql_select_db("db", $conn); 
         $query = "select * from test"; 
         $result = mysql_query ($query); 
         $row = mysql_fetch_array($result); 
    
         echo $row[\'test\']; 
    
        '; 
    fwrite($filehandle, $test); 
    fclose($filehandle); 
    ?> 
    

    ,而不是輸出它輸出的查詢,而不是查詢的結果,我想這是因爲我存儲在一個變量的完整的查詢,沒有人知道如何我將能夠輸出的結果查詢而不是實際的查詢?感謝您的幫助。

    +1

    呃什麼?你**不**存儲完整的查詢。你正在存儲PHP代碼。 –

    +0

    @ Fred-ii-由於它在單引號字符串中,因此他需要避開引號。 – Barmar

    +0

    'test.php'在開始時是否已經有<?php?如果不是,你需要將它包含在'$ test'中。 – Barmar

    回答

    1

    您應該使用庫MySQLi或PDO

    但是你的代碼應該是這個樣子:

    $filename = "test.php"; 
    $filehandle = fopen($filename ,'a') or die("can't open file"); 
    $conn = mysql_connect("server" ,"username" ,"password") or die (mysql_error()) ; 
    mysql_select_db("db" ,$conn); 
    $query = "select * from test"; 
    $result = mysql_query($query); 
    // Iterate through results 
    while($row = mysql_fetch_array($result)) 
    { 
    // var_dump[$row]; 
        // Replace your-column-name below with the actual name : 
        fwrite($filehandle ,$row['your-column-name']); 
    } 
    fclose($filehandle); 
    

    Fi nd手冊頁的一些示例:mysql_fetch_array,mysql_fetch_assoc,mysql_fetch_array

    +0

    感謝你這就像你剛剛知道我計劃使用循環:)。 – jphillip724

    1

    你不覺得它應該是這樣的:

    <?php 
    $conn = mysql_connect("server", "username", "password") or die (mysql_error()) ; 
    mysql_select_db("db", $conn); 
    $query = "select * from test"; 
    $result = mysql_query ($query); 
    $row = mysql_fetch_array($result); 
    $test = $row['test']; 
    $filename = "test.php"; 
    $filehandle = fopen($filename, 'a') or die("can't open file"); 
    fwrite($filehandle, $test); 
    fclose($filehandle); 
    ?> 
    
    +1

    我認爲這是OP想要的。但無論如何,你不需要在'$ row'中轉義單引號。 –

    +0

    你不覺得它應該是這樣的:'$ row ['test'];' – user2092317

    +0

    大聲笑......我甚至都沒有看到他寫了什麼,只是將它從易變的$ test ...中移出來: P – whizzzkid

    1
    <?php 
    $filename = "test.php"; 
    $filehandle = fopen($filename, 'a') or die("can't open file"); 
    
    // do the query 
    $conn = mysql_connect("server", "username", "password") or die (mysql_error()) ; 
    mysql_select_db("db", $conn); 
    $query = "select * from test"; 
    $result = mysql_query ($query); 
    
    // get the result row 
    $row = mysql_fetch_array($result); 
    
    // write a field to file 
    fwrite($filehandle, $row['test']); 
    fclose($filehandle); 
    ?> 
    
    相關問題