Php 返回混合表的SQL查询
你好,我有以下网址Php 返回混合表的SQL查询,php,mysql,variables,get,Php,Mysql,Variables,Get,你好,我有以下网址 http://www.test.nl/test.php?itemnr=123 在我的数据库表items2中,我的列是: itemnr | itemId | Description | etc 因为我想在此页面上显示itemnr和itemId,所以我有以下查询: <?php $itemnummer = intval($_GET['itemnr']); $itemIDnummer = "SELECT DISTINCT itemId from items2 where i
http://www.test.nl/test.php?itemnr=123
在我的数据库表items2
中,我的列是:
itemnr | itemId | Description | etc
因为我想在此页面上显示itemnr和itemId,所以我有以下查询:
<?php
$itemnummer = intval($_GET['itemnr']);
$itemIDnummer = "SELECT DISTINCT itemId from items2 where itemnr = '" .$itemnummer. "'";
$resultaat = mysql_query($itemIDnummer) or die(mysql_error());
echo "$resultaat";
?>
<?php
$itemnummer = intval($_GET['itemnr']);
$itemIDnummer = "SELECT DISTINCT itemId, itemnr from items2 where itemnr = '" .$itemnummer. "'";
$resultaat = mysql_query($itemIDnummer) or die(mysql_error());
$fetchaat = mysql_fetch_assoc($resultaat);
echo $fetchaat["itemId"];
echo $fetchaat["itemnr"];
?>
添加这样的代码
<?php
$itemnummer = intval($_GET['itemnr']);
$itemIDnummer = "SELECT DISTINCT itemId from items2 where itemnr = '" .$itemnummer. "'";
$resultaat = mysql_query($itemIDnummer) or die(mysql_error());
$fetchaat = mysql_fetch_assoc($resultaat);
echo $fetchaat["itemId"];
?>
什么毛病?什么奇怪的结果?你有错误吗?空白屏幕?您当前正试图直接打印结果集;您需要使用类似于mysql\u fetch\u array
的东西对其进行迭代以获取数据。您也对SQL注入非常开放;如果你现在正在学习,你应该看看使用PDO而不是弃用的<代码> mySqLy库,这个代码是,考虑使用MySQL或PDO而不是MySQL。此外,<代码> $ReultAt不是一个字符串,因此即使查询成功也会引发错误。可能是“数组到字符串转换”错误。@BasSchreuder-您需要类似于的东西($row=mysql\u fetch\u array($resultaat)){echo$row['itemId'];}
@BasSchreuder-我同意。但是如果你现在正在学习PHP,你可以跳过使用mysql\uuz
函数来学习PDO。正如对OP的评论一样,你的代码容易受到SQL注入攻击。OP问“有人看到我的错误了吗?”我注意到他在尝试回显数组。回声暗示了他的意图,如果他觉得自己的sql语句容易被注射,那么他就会要求注射。@Barranka不,不是。请参阅我对该问题的评论。@DanceSC-不显示错误,但显示空白的“页面”。没有打印结果。可能,只是可能,因为我使用intval,它只允许槽号和我正在测试的这个特定itemnr包含字符。将intval替换为。。。?