这个脚本有什么问题?它一直在给我的错误,但不会告诉我有什么问题
我需要这个来从url中传递的项目编号中查找频道编号。然后回显频道号
<?php
$id = $_GET['item'];
if (!$link = mysql_connect('server', 'user', 'pass')) {
echo 'Could not connect to mysql';
exit;
}
if (!mysql_select_db('xmlrpc', $link)) {
echo 'Could not select database';
exit;
}
$sql = mysql_query("SELECT channel FROM channels WHERE item = '".$_GET['item']."'")or die(mysql_error());
$result = mysql_query($sql, $link);
if (!$result) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo $row['channel'];
}
mysql_free_result($result);
?>
答案 0 :(得分:0)
$sql = mysql_query("SELECT channel FROM channels WHERE item = '".$_GET['item']."'") or die(mysql_error());
要
$sql = "SELECT channel FROM channels WHERE item = '".$_GET['item']."'";
作为旁注,请勿使用mysql_
个函数,became obsolete (PHP 5.5)。例如,使用PDO,因为它代表您的代码容易受到SQL injections。
答案 1 :(得分:-1)
当item已被声明为变量$ id
时$id = $_GET['item'];
您已经可以将它用作mysql中的变量
$sql = mysql_query("SELECT channel FROM channels WHERE item = '".$_GET['item']."'")or die(mysql_error());
将其更改为
$sql="SELECT * FROM channels WHERE item ='$id'";