gpt4 book ai didi

php - mysql_fetch_array 未从数据库中的字符串中获取结果。 var_dump 显示为 null

转载 作者:行者123 更新时间:2023-11-29 07:25:55 24 4
gpt4 key购买 nike

当我使用 var_dump 时,此处的 $time 变量显示为 null。然而在数据库中时间显示为上午 9:00。我正在尝试通过电子邮件发送乘客想要接载的时间。为什么 $time null 以及如何解决这个问题?

<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
$host="localhost"; // Host name
$username="user"; // Mysql username
$password="password"; // Mysql password
$db_name="mydb"; // Database name
$tbl_name="pickuprequests"; // Table name

// Connect to server and select database.
$link = mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name", $link)or die("cannot select DB");

//names of the passengers in option tags
$name = $_POST['name'];

//this query gets all the records from pickuprequests of the passenger selected
$query="SELECT * FROM $tbl_name WHERE name = '$name'";
$result=mysql_query($query, $link);

// get the location of the passenger from $result
$search_loc = mysql_fetch_array($result);
$loc = $search_loc['location'];

//get time of pickup
$search_time = mysql_fetch_array($result);
$time = $search_time['time'];

//find how many rows are returned with the passenger name
$search_row = mysql_query($query, $link);
$count = mysql_num_rows($search_row);

//deletes a record assoc with passenger name
$delete_query = "DELETE FROM pickuprequests WHERE name = '$name'";

//message for the passenger
$msg_passenger = "Your driver is on the way! You will receive one last email when the driver arrives.";
$subject_passenger = "Driver on the way";
$mailheaders = "MIME-Version: 1.0"."\r\n";
$mailheaders .= "Content-type: text/html; charset=iso-8859-1"."\r\n";
$mailheaders .= "From: TripoZipo <tripozipo.com>"."\r\n";

//passengers email in diff table assoc with name selected from option tags
$query_email = "SELECT * FROM tzmember WHERE name = '$name'";
$get_email = mysql_query($query_email,$link);
$search_email = mysql_fetch_array($get_email);
$email = $search_email['email'];

//message for the driver
$msg_driver = sprintf(
"
<html>
<body>
<table border='1'>
<tr>
<td>Passenger</td><td>Location</td><td>Time</td>
</tr>
<tr>
<td>%s</td><td>%s</td><td>%s</td>
</tr>
</table>
</body>
</html>
",
$name,
$loc, $time);

$subject_driver = "Passenger Location";

//drivers email is the session name for driver.php
$driver = $_SESSION['driver'];

//on submit and if a passenger is selected run code
if(isset($_POST['submit']) && isset($_POST['name'])) {

//$count returns all the rows assoc with passenger name
if($count) {
//mail($email, $subject_passenger, $msg_passenger, $mailheaders); // email passenger your ride is on the way
mail($driver, $subject_driver, $msg_driver, $mailheaders); // email driver the location
//mysql_query($delete_query, $link); // finally delete the request as its not pending anymore
//echo "<script type='text/javascript'> document.location = 'http://mobile.tripozipo.com/confirmation2.php'; </script>";
}
else { //else if no rows are returned

}
}
?>

最佳答案

调用 mysql_fetch_array 从结果集中返回完整的 ROW,而不仅仅是单个列。因此,您只需要调用它一次,而不是每次尝试从行中获取值时调用它。

<?php
error_reporting(E_ALL);
ini_set('display_errors',1);
$host="localhost"; // Host name
$username="username"; // Mysql username
$password="password"; // Mysql password
$db_name="dbname"; // Database name
$tbl_name="pickuprequests"; // Table name

// Connect to server and select database.
$link = mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name", $link)or die("cannot select DB");

//names of the passengers in option tags
$name = $_POST['name'];

//this query gets all the records from pickuprequests of the passenger selected
$query="SELECT * FROM $tbl_name WHERE name = '$name'";
$result=mysql_query($query, $link);

// get the location of the passenger from $result
$row = mysql_fetch_array($result);
$loc = $row['location'];

//get time of pickup
//$search_time = mysql_fetch_array($result);
$time = $row['time'];

//find how many rows are returned with the passenger name
//$search_row = mysql_query($query, $link);
$count = mysql_num_rows($result);





//deletes a record assoc with passenger name
$delete_query = "DELETE FROM pickuprequests WHERE name = '$name'";

//message for the passenger
$msg_passenger = "Your driver is on the way! You will receive one last email when the driver arrives.";
$subject_passenger = "Driver on the way";
$mailheaders = "MIME-Version: 1.0"."\r\n";
$mailheaders .= "Content-type: text/html; charset=iso-8859-1"."\r\n";
$mailheaders .= "From: TripoZipo <tripozipo.com>"."\r\n";

//passengers email in diff table assoc with name selected from option tags
$query_email = "SELECT * FROM tzmember WHERE name = '$name'";
$get_email = mysql_query($query_email,$link);
$search_email = mysql_fetch_array($get_email);
$email = $search_email['email'];

//message for the driver
$msg_driver = sprintf(
"
<html>
<body>
<table border='1'>
<tr>
<td>Passenger</td><td>Location</td><td>Time</td>
</tr>
<tr>
<td>%s</td><td>%s</td><td>%s</td>
</tr>
</table>
</body>
</html>
",
$name,
$loc, $time);

$subject_driver = "Passenger Location";

//drivers email is the session name for driver.php
$driver = $_SESSION['driver'];

//on submit and if a passenger is selected run code
if(isset($_POST['submit']) && isset($_POST['name'])) {

//$count returns all the rows assoc with passenger name
if($count) {
//mail($email, $subject_passenger, $msg_passenger, $mailheaders); // email passenger your ride is on the way
mail($driver, $subject_driver, $msg_driver, $mailheaders); // email driver the location
//mysql_query($delete_query, $link); // finally delete the request as its not pending anymore
//echo "<script type='text/javascript'> document.location = 'http://mobile.tripozipo.com/confirmation2.php'; </script>";
}
else { //else if no rows are returned

}
}
?>

Please dont use the mysql_ database extensions, it is deprecated (gone for ever in PHP7) Especially if you are just learning PHP, spend your energies learning the PDO or mysqli_ database extensions, and here is some help to decide which to use

关于php - mysql_fetch_array 未从数据库中的字符串中获取结果。 var_dump 显示为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34558672/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com