0

私はphpが初めてだと思います。MySQL データベースのコンテンツを表示する php ページを作成しようとしました。ローカルホストで試してみると、「致命的なエラー: 18 行目の C:\xampp\htdocs\phplessons\guestbook_displayer_2.php の未定義関数 mysql_results() への呼び出し」という警告が表示されます。db接続が機能しているようです。誰かがヒントを持っていますか?

これは私のコードです:

<html>
<head></head>
<title>Display MySQL db</title>
<body>
<?php
$db=mysql_connect("localhost","root","mypassword"); //db connection
mysql_select_db ("prova001"); //choose a db
$res=mysql_query("SELECT * from php_guestbook"); //query a table
$num=mysql_num_rows($res);
// begin table
echo "<table border=1>";
echo "<tr><td>Nr.</td><td>First name</td>";
echo"<td>Last name</td><td>Country</td>";
echo"<td>E-Mail address</td><td>Telephone</td></tr>";
// contatore
for ($i=0; $i<$num; $i++)
{
$cg=mysql_results($res,$i,"firstname"); // line 18 this var is undefined. 
$nm=mysql_results($res,$i,"lastname"); //Probably also the others have a similar problem.
$np=mysql_results($res,$i,"country"); //Can it be due to a bad record counter?
$st=mysql_results($res,$i,"email");
$tl=mysql_results($res,$i,"telephone");
$lf=$i+1;
//
echo "<tr><td>$lf</td><td>$cg</td><td>$nm</td><td>$np</td><td>$st</td><td>$tl</td></tr>";
}
echo "</table>";
mysql_close($db);
?>
</body>

4

1 に答える 1

1

あなたはおそらくタイプミスをしました。メソッドは's' なしのmysql_result()です。

ただし、この方法でクエリ結果の処理を短縮できます。

// query
$res=mysql_query("SELECT * from php_guestbook"); //query a table
// begin table
echo "<table border=1>";
echo "<tr><td>Nr.</td><td>First name</td>";
echo"<td>Last name</td><td>Country</td>";
echo"<td>E-Mail address</td><td>Telephone</td></tr>";

while ($item = @mysql_fetch_assoc($res)) {
    // do something with var $item;
    $cg = $item['firstname'];
    $nm = $item['lastname'];
    // ect
}
于 2013-07-28T10:10:41.490 に答える