PHP - MYSQL 查询结果

标签 php mysql sql

这个问题在这里已经有了答案:





mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows etc... expects parameter 1 to be resource

(31 个回答)


7年前关闭。




我需要帮助来修复我的查询,以便我可以获得结果并将其设置在行上。请帮助我是sql新手

我收到此错误: mysql_num_rows() 期望参数 1 是资源,给定的 bool 值

变量 $deets与插入分贝上的一样..

我的代码:

 <?php
 $deets = $_POST['deets'];
 $deets = preg_replace('#[^0-9/]#i', '', $deets);

 include ("connect.php");


 $events = '';
 $query = mysql_query('SELECT H.hora FROM horario H WHERE NOT EXISTS(SELECT EV.idhora     FROM eventos EV WHERE  H.hora = EV.idhora AND data= "'.$deets.'")');
 $num_rows = mysql_num_rows($query);
 if($num_rows > 0) {
$events .= '<div id="eventsControl"><button class="btn2" style=" float:right;" onMouseDown="overlay()"><b>Fechar</b></button><p><b> ' . $deets . '</b></p></div> <br />';

while($row = mysql_fetch_array($query)) {

    $desc = $row['hora'];
    $form = "<form style='float:right;' action='marcarhora.php' method='post'><input type='hidden' name='gethora' value='$desc '><input type='hidden' name='getdate' value='$deets '><input type='hidden' name='getuser' value='{$_SESSION["email"]}'>"; 



    $desc1 = "<input type='submit'  class='btn1' name='insert' value='Marcar Hora'/></form>";
    $events .= '<div id="eventsBody">' . $desc . '&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;'.$form .$desc1. '<br /><hr><br /></div>';
}
   }

   echo $events;
  ?>

最佳答案

<?php
$deets = $_POST['deets'];
$deets = preg_replace('#[^0-9/]#i', '', $deets);

include("connect.php");


$events = '';

// use $res not $query, as mysql_query returns a result not a query
//$query = mysql_query('SELECT H.hora FROM horario H WHERE NOT EXISTS(SELECT EV.idhora     FROM eventos EV WHERE  H.hora = EV.idhora AND data= "' . $deets . '")');
// you are using wrong " quotes to encapsulate value, given that $deets should be a number (as you have filtered it above, then you don't even need need quotes around it 
$sql = "SELECT H.hora FROM horario H WHERE NOT EXISTS(SELECT EV.idhora     FROM eventos EV WHERE  H.hora = EV.idhora AND data= '{$deets}')";

// always check for errors, in case query failed
$res = mysql_query($sql) or die(mysql_error());

$num_rows = mysql_num_rows($res);

if ($num_rows > 0) {
    $events .= '<div id="eventsControl"><button class="btn2" style=" float:right;" onMouseDown="overlay()"><b>Fechar</b></button><p><b> ' . $deets . '</b></p></div> <br />';

    // mysql_fetch_array is not necessary unless you need both numeric and textual indexing
//    while ($row = mysql_fetch_array($query)) {
    while ($row = mysql_fetch_assoc($res)) {

        $desc = $row['hora'];
        $form = "<form style='float:right;' action='marcarhora.php' method='post'><input type='hidden' name='gethora' value='$desc '><input type='hidden' name='getdate' value='$deets '><input type='hidden' name='getuser' value='{$_SESSION["email"]}'>";


        $desc1 = "<input type='submit'  class='btn1' name='insert' value='Marcar Hora'/></form>";
        $events .= '<div id="eventsBody">' . $desc . '&nbsp;&nbsp;|&nbsp;&nbsp;&nbsp;' . $form . $desc1 . '<br /><hr><br /></div>';
    }
}

echo $events;
?>

关于PHP - MYSQL 查询结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22802320/

相关文章:

php - 在php中获取url的最后一个参数

mysql - PHP 防止 MySQL 竞争条件

mysql - 如何在表中添加 "created at"列

MySQL根据文本单词进行计数

mysql - 如何在sqlfiddle调用存储过程?

c# - 将文本框值插入数据库

php - 我如何调整表单输入字段的大小

php - 我如何清除先前回显的结果而不影响 php 中的任何其他功能?

php - 一维数组提交后变成多维数组

java - 如何更新 MySQL 中的多个列(通过 Java)?