2

xamppでデータベースを作成し、xamppでmysqlにアクセス/接続する非常に単純なphpスクリプトを作成しました(xampp/htdocsに保存しました)。接続は問題ありませんが、ブラウザで実行すると、php で作成したテーブルのみが表示され、mysql のデータは表示されませんでした。何が問題なのですか?

phpコードは次のとおりです。

<?php

// Make a MySQL Connection

mysql_connect("localhost", "root", "password") or die(mysql_error());

mysql_select_db("test") or die(mysql_error());

// Get all the data from the "example" table
$result = mysql_query("SELECT * FROM example") 
or die(mysql_error()); 

echo "<table border='1'>";
echo "<tr> <th>Name</th> <th>Age</th> </tr>";
// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
// Print out the contents of each row into a table
echo "<tr><td>"; 
echo $row['name'];
echo "</td><td>"; 
echo $row['age'];
echo "</td></tr>"; 
} 

echo "</table>";
?>
4

1 に答える 1

2

PHP と MySQL を使い始めたばかりなら、mysql_*関数が非推奨になっているため、PDO の学習を始めてみませんか。

テーブルにデータがあることをexample確認し、PHPMyAdmin で確認して、この素敵なガイドに従ってください。

コードは次のようになります。

<?php
    $db = new PDO('mysql:host=localhost;dbname=test;charset=UTF-8', 'username', 'password', array(PDO::ATTR_EMULATE_PREPARES => false, PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));

    echo "<table border='1'>";
    echo "<tr> <th>Name</th> <th>Age</th> </tr>";

    $stmt = $db->query("SELECT * FROM example");
    while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
        echo "<tr><td>"; 
        echo $row['name'];
        echo "</td><td>"; 
        echo $row['age'];
        echo "</td></tr>"; 
    }

    echo "</table>";
?>
于 2012-10-01T07:25:12.133 に答える