gpt4 book ai didi

php - 从 MySQL 数据库返回与特定 PHP 变量匹配的值?

转载 作者:行者123 更新时间:2023-11-30 23:08:15 25 4
gpt4 key购买 nike

我正在构建一个简单的待办事项网站,只是为了帮助我更好地学习 mySQL。我在获取返回值时遇到了一些麻烦。当我使用“SELECT * FROM pages”作为查询时,所有数据都正常返回。 (pages是表名)

但是,我想做的只是为一个特定用户拉回一行数据。为此,我在数据库中使用了一个唯一的 URL 字段(之前使用另一个函数创建)来选择要为哪一行返回数据。

我在这里遗漏了一些简单的东西,我希望有人能帮我找到。使用以下代码,我得到了一系列与我尝试输出的 7 个变量相对应的错误:(我知道 SQL 注入(inject)问题,这只是为了简单起见。另外,请原谅过度评论,我正在学习,这是我跟上工作的唯一途径)

警告:mysql_result():第 16 行/test/preview.php 中提供的参数不是有效的 MySQL 结果资源

<?php
include './includes/dbcon.php';

//declare $preview_url as the data submitted in the form under the 'preview_url' field
$preview_url = ($_POST['preview_url']);

//access db settings included in ./includes/dbcon.php
mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");

//select the row in the table that matches the passed variable from the form submission
$query="SELECT * FROM 'pages' WHERE 'url' = '".$preview_url."'";
$result=mysql_query($query);

// assign mySQL values from table to php variables
$email = mysql_result($result,1,'email');
$date=mysql_result($result,1,"date");
$title=mysql_result($result,1,"title");
$id=mysql_result($result,1,"id");
$items=mysql_result($result,1,"items");
$url=mysql_result($result,1,"url");
$expiry=mysql_result($result,1,"expiry");

//close the mySQL connection
mysql_close();

?>

<html>
<head><title>Preview for <? echo $email; ?></title></head>
<body>
<strong>Email: </strong><a href="mailto:<? echo $email; ?>"><? echo $email; ?></a>
<br />
<strong>Title: </strong><? echo $title; ?><br />
<strong>Date: </strong><? echo $date; ?><br />
<strong>Entry ID: </strong><? echo $id; ?><br />
<strong>Unique URL: </strong><a href="<? echo $url; ?>" target="_blank"><? echo
$url; ?></a><br />
<strong>Link Expiration Date: </strong><? echo $expiry; ?><br />
<hr />
<strong>List:</strong><br />
<? echo $items; ?>
</body>
</html>

最佳答案

更改此代码部分 Edwin

//select the row in the table that matches the passed variable from the form submission
$query="SELECT * FROM `pages` WHERE `url` = '".$preview_url."'";
$result=mysql_query($query);

if (!$result) {
die(mysql_error());
}

// assign mySQL values from table to php variables
$email = mysql_result($result,1,'email');
$date=mysql_result($result,1,"date");
$title=mysql_result($result,1,"title");
$id=mysql_result($result,1,"id");
$items=mysql_result($result,1,"items");
$url=mysql_result($result,1,"url");
$expiry=mysql_result($result,1,"expiry");

//close the mySQL connection
mysql_close();

此外,如果您真的渴望学习,那么请知道 mysql_ 函数已被弃用,并且很快就会消失。学习使用 mysqli_ 功能和 PDO。

http://us1.php.net/manual/en/book.mysqli.php

http://us1.php.net/manual/en/class.pdo.php

关于php - 从 MySQL 数据库返回与特定 PHP 变量匹配的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20910762/

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