数据库查询php MySQL-未显示搜索结果
(问题非常详细,很久没有读到:“我猜我使用的MYSQL\u FETCH\u数组是错误的。”) 你好!!以下代码用于在数据库中进行基本搜索。数据通过表单传递。我使用的教程是由:“Frost of Slunked.com”编写的,它是一个基本的注册/登录php MySQL教程,非常有效。我设法编写了一个woking table updater函数和表单submit,将新数据添加到所选的表中(以便按预期工作) config.php-连接到MySQL服务器,选择数据库,启动会话,需要functions.php(包括作者注释)数据库查询php MySQL-未显示搜索结果,php,mysql,forms,form-submit,Php,Mysql,Forms,Form Submit,(问题非常详细,很久没有读到:“我猜我使用的MYSQL\u FETCH\u数组是错误的。”) 你好!!以下代码用于在数据库中进行基本搜索。数据通过表单传递。我使用的教程是由:“Frost of Slunked.com”编写的,它是一个基本的注册/登录php MySQL教程,非常有效。我设法编写了一个woking table updater函数和表单submit,将新数据添加到所选的表中(以便按预期工作) config.php-连接到MySQL服务器,选择数据库,启动会话,需要functions.
functions.php-有多个函数(登录、createRide、注册等)。大多数函数的目的是从提交的HTML表单中获取值,然后维护所需的操作-我只提到我的searchRide函数(我猜它有错误或至少与之有关)以及createRide功能,该功能工作正常
<?php ...
unction searchRide($pWhen_min, $pWhen_max, $pFrom, $pTo){
if (!empty($pWhen_min) && !empty($pWhen_max) && !empty($pFrom) && !empty($pTo)) {
global $sql2, $query2;
$sql2 = "SELECT * FROM ride WHERE `from` ='$pFrom' AND `to` = '$pTo' AND `when` >= '$pWhen_min' AND `when` <= '$pWhen_max' ";
$query2 = mysql_query($sql2) or trigger_error("Query Failed: " . mysql_error());
}
}
function createRide($pFrom, $pTo, $pWhen, $pSeats, $pPrice, $pCar){
if (!empty($pFrom) && !empty($pTo) && !empty($pWhen) && !empty($pSeats) && !empty($pPrice) && !empty($pCar)){
$sql = "SELECT id FROM users WHERE username= '" . $username . "' LIMIT 1";
$result = mysql_query($sql);
if(!$result) {
trigger_error("ELKURTAD " . mysql_error());
}
$row = mysql_fetch_array($result);
$sql = "INSERT INTO ride (`from`, `to`, `when`, `seats`, `price`, `car`, `u_id`)
VALUES ('" . $pFrom . "', '" . $pTo . "', '" . $pWhen . "',
'" . $pSeats . "', '" . $pPrice . "', '" . $pCar . "', '" . $result . "');";
$query = mysql_query($sql) or trigger_error("Query Failed: " . mysql_error());
if ($query) {
return TRUE;
}
}
return FALSE;
}
...?>
以下情况将不起作用
if (searchRide($_POST['when_min'], $_POST['when_max'], $_POST['from'], $_POST['to'])) {
由于您没有从searchRide函数返回任何值,您需要返回true才能进入状态。请阅读以下内容:感谢avice Kuya John,它在我的列表中的某个位置,我想我会在继续使用此网站时查看它。dkkumargoyal,您的回答解决了我的问题,现在我得到了我的搜索结果。谢谢您的帮助lp!
<?php
require_once 'config.php';
$sOutput .= '<div id="searchRide-body">';
if (isset($_GET['action'])) {
switch (strtolower($_GET['action'])) {
case 'searchride':
if (isset($_POST['when_min']) && isset($_POST['when_max']) && isset($_POST['from']) && isset($_POST['to'])) {
if (searchRide($_POST['when_min'], $_POST['when_max'], $_POST['from'], $_POST['to'])) {
while($row = mysql_fetch_array($query2)){
$sOutput .= "' ID: '" .$row['id'] . "' <br />
When: '" . $row['when'] . "' <br />
From: '" . $row['from'] . "' <br />
To: '" . $row['to'] . "' <br />
Seats left: '" . $row['seats'];
}
}
}
}
}else{
if (isset($_SESSION['error'])) {
$sError = '<span id="error">' . $_SESSION['error'] . '</span><br />';
}
$sOutput .= '<h2>Search for rides</h2>
' . $sError . '
<form name="searchride" method="post" action="' . $_SERVER['PHP_SELF'] . '?action=searchride">
From: <input type="text" name="from" value=* /><br />
To: <input type="text" name="to" value=* />
When_min: <input type="text" name="when_min" value=* />
When_max: <input type="text" name="when_max" value=* />
<br /><br />
<input type="submit" name="submit" value="Search" />
</form>
<br />
<h4>Would you like to <a href="index.php">Go back?</a></h4>';
}
echo $sOutput . "<br />";
echo "TEST string" . "<br />";
echo $query2 . " query2<br /> ";
echo $sql2 . " sql2<br />";
echo $row . "<br />";
?>
if (searchRide($_POST['when_min'], $_POST['when_max'], $_POST['from'], $_POST['to'])) {