我正在尝试根据2个基本条件计算数据库中的条目。它返回一个空白结果,即使有结果可以找到。任何人都知道我在这里做错了什么?我尝试了很多不同的方式,但都没有结果。 (如果我直接在phpmyadmin中输入查询,则返回结果。)
$sql = "SELECT count(*) as total_count from orderOption3Detail WHERE orderDate='$orderDate' AND studentID='$studentID'";
$numericalResult = mysql_query($sql, $con);
$row = mysql_fetch_object($numericalResult);
$totalOrders1 = $row->total_count;
echo "My orders:" . $totalOrders1;
答案 0 :(得分:0)
正如其他人所说,请确保在进行查询之前清理变量。
$sql = "SELECT * FROM orderOption3Detail WHERE orderDate = '" . $orderDate . "' AND studentID = '" . $studentID . "'";
$sql_request_data = mysql_query($sql) or die(mysql_error());
$sql_request_data_count = mysql_num_rows($sql_request_data);
echo "Number of rows found: " . $sql_request_data_count;
这就是你所需要的一切。
答案 1 :(得分:0)
编辑:提供完整的代码更正:
$con=mysqli_connect($db_host,$db_user,$db_pass,$db_name); // Check connection
if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } //global option 1
$sql = "SELECT count(*) as total_count from orderOption3Detail WHERE orderDate='$orderDate' AND studentID='$studentID'";
//echo $sql;
$numericalResult = $con->query($sql);
$row = mysqli_fetch_object($numericalResult);
echo $row->total_count; //echo (int) $row->total_count;
请测试一下并告诉我。祝好运! -----结束编辑----
您是否已在SQL字符串中测试直接将值分配为测试,例如:
$sql = "SELECT count(*) as total_count from orderOption3Detail WHERE orderDate='05/23/2012' AND studentID='17'";
另外,你是否检查了日期的格式是否正确,读取$ orderdate变量并在PHPMyAdmin中测试它?
您是否读过插入了值的$ sql并在PHPMyAdmin中进行测试并且有效?
另外,检查连接以确保那里没有问题。
还有一件事,抱歉。您似乎在mysql_query语句中使用了错误的语法。这种方式适用于mysqli_query,参数将被反转。仅尝试:
$numericalResult = mysql_query($sql);
如果您之前已进行过连接和数据库选择,例如:
$connection=mysql_connect($db_host, $db_username, $db_password);
if (!$connection)
{
$result=FALSE;
die('Error connecting to database: ' . mysql_error());
}
// Selects database
mysql_select_db($db_database, $connection);
祝福,