0

データベースで見つかったすべてのエントリを表示する PHP を実行しましたが、動作します。! ! ワンプですが、xamppでスカルで開くと..

Warning: mysql_num_rows() expects parameter 1 to be resource

何が問題なのかわからない。

$connect = mysql_connect('localhost','root','') or die(mysql_error());
$select = mysql_select_db('mis_library',$connect) or die(mysql_error());

$result=mysql_query('SELECT book FROM Catalog') or die(mysql_error());;

$total=mysql_num_rows($result);   <<<<<<<<<<<<<<<THIS PART! ! ! ! ! !

echo "<div style=font-family:calibri;font-size:20px;font-weight:bold;>There are $total Available Entries.</div><br />";
echo "<div style=font-family:calibri;font-size:15px;font-weight:bold;margin-top:-10px;>Select some from the following. . .</div><br />";


echo "<div style=overflow-y:auto;overflow-x:hidden;height:210px; >";
$i=0;
while ($row=mysql_fetch_row($result))
{
    foreach ($row as $field)

    $get=mysql_query("SELECT b_total, b_os FROM catalog WHERE book='$field'");
    $view=mysql_fetch_array($get);
    $i++;
    echo "
    <form id='Entry_view' action='Entry_view.php' method='get' target='area_right' >
    <input type='hidden' id='input$i' name='Entry_view_get' value='$field' />
        <a href='' onClick='submit();standout();' >

        <div id='div' style=background:url('Background/Transparent_8.png')no-repeat;background-size:350px;width:450px;height:30px;float:left;margin-left:5px;margin-top:5px;border-radius:3px;>
            <div style='font-family:calibri;padding-left:5px;padding-top:3px;float:left;size:8px;color:darkgreen;font-weight:bold;margin-top:0px;margin-left:0;border:groove;border-radius:3px;width:340px;height:21px;overflow:hidden; white-space: nowrap; text-overflow:ellipsis;'>
            $field
            </div>
        </a>
            <div style='font-family:calibri; font-size:10px; color:darkgreen; height:25px; font-weight:bold;float:left;margin:2px 0px 0px 2px;' >
            Total Books: ".$view[b_total]." <br />Books on Shelf: ".$view[b_os]."
            </div>
        </div>

    </form>
    ";
}
echo "</div>";

div とフォームは気にしないでください。これは、機能のために追加した詳細にすぎません。

4

1 に答える 1

0

たとえば、コードの最初の行には 2 つの終了セミコロン ( ;) があります。それが問題を引き起こしている可能性があります。あなたが抱えている問題は、実際には$result、強調表示した行よりも 1 行目に定義した の値に関連しています。

ちなみに、このコードは次のように置き換えることができます。

echo "
<form id='Entry_view' action='Entry_view.php' method='get' target='area_right' >
yada yada yada
</form>
";

これにより、あらゆる場所で一重引用符を使用する必要がなくなります。

echo <<< HTML
<form id="Entry_view" action="Entry_view.php" method="get" target="area_right" >
yada yada yada
</form>
HTML;

divまた、スタイル属性を二重引用符で囲まずにインライン スタイルをエコーし​​ていることにも気付きました。そのような慣行は避け、スタイルを必ず引用符で囲むことを強くお勧めします。

于 2012-10-23T07:20:31.327 に答える