PHP&MySQL:使用$\u GET['id']查询匹配的表id
嘿,伙计们,这里有点麻烦,我不明白为什么我的PHP脚本不能工作 因此,我将首先显示代码,然后回顾我遇到的问题:PHP&MySQL:使用$\u GET['id']查询匹配的表id,php,mysql,Php,Mysql,嘿,伙计们,这里有点麻烦,我不明白为什么我的PHP脚本不能工作 因此,我将首先显示代码,然后回顾我遇到的问题: include('select-stock.php'); include('db-affinity/header-main.php'); ?> <?php $carId = $_GET['id']; ?> <?php try { $carview = $db->prepare("SELECT Make, Model, Colour, FuelType,
include('select-stock.php');
include('db-affinity/header-main.php'); ?>
<?php $carId = $_GET['id']; ?>
<?php
try {
$carview = $db->prepare("SELECT Make, Model, Colour, FuelType, Year, Mileage, Bodytype, Doors, Variant, EngineSize, Price, Transmission, PictureRefs, ServiceHistory, PreviousOwners, Options, FourWheelDrive, FullRegistration FROM import WHERE FullRegistration = $carId");
} catch (Exception $e) {
echo "Error.";
exit;
}
$cardata = $carview->fetch(PDO::FETCH_ASSOC)
?>
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<?php echo "$carId"; ?>
<?php echo mysql_errno($carview) ?>
<?php echo '<ul class="overwrite-btstrp-ul other-specs-ul h4-style">
<li>Mileage: '.number_format($cardata["Mileage"]).'</li>
<li>Engine size: '.$cardata["EngineSize"].'cc</li>
</ul>'
?>
</div>
</div>
</div>
<?php include('db-affinity/footer.php') ?>
理论上
FROM import WHERE FullRegistration = $carId
但是,由于某种原因,在我的服务器上,当我使用上面的脚本时,我会返回nil结果,而不是与我得到的get id匹配的行的结果:
里程:0
发动机尺寸:cc
我知道我的代码目前是不安全的,但是现在它不是一个问题
任何关于为什么我可能会得到零结果的想法,我对这个表的其他查询都可以完美地工作,但是我对这个问题感到烦恼,你能看到这个代码中可能导致这个问题的任何东西吗
下面是代码块select-stock.php顶部包含的其他查询,以防出现问题:
<?php
include('database.php');
try {
$results = $db->query("SELECT Make, Model, Colour, FuelType, Year, Mileage, Bodytype, Doors, Variant, EngineSize, Price, Transmission, PictureRefs, ServiceHistory, PreviousOwners, Options, FourWheelDrive, FullRegistration FROM import ORDER BY Make ASC");
} catch (Exception $e) {
echo "Error.";
exit;
}
///carousel-vehicle results
try {
$fourresults = $db->query("SELECT Make, Model, Colour, FuelType, Year, Mileage, Bodytype, Doors, Variant, EngineSize, Price, Transmission, PictureRefs, ServiceHistory, PreviousOwners, Options, FourWheelDrive FROM import ORDER BY Make LIMIT 0, 4");
} catch (Exception $e) {
echo "Error.";
exit;
}
try {
$fourresultsone = $db->query("SELECT Make, Model, Colour, FuelType, Year, Mileage, Bodytype, Doors, Variant, EngineSize, Price, Transmission, PictureRefs, ServiceHistory, PreviousOwners, Options, FourWheelDrive FROM import ORDER BY Make LIMIT 4, 4");
} catch (Exception $e) {
echo "Error.";
exit;
}
try {
$fourresultstwo = $db->query("SELECT Make, Model, Colour, FuelType, Year, Mileage, Bodytype, Doors, Variant, EngineSize, Price, Transmission, PictureRefs, ServiceHistory, PreviousOwners, Options, FourWheelDrive FROM import ORDER BY Make LIMIT 8, 4");
} catch (Exception $e) {
echo "Error.";
exit;
}
try {
$makeFilter = $db->query("SELECT DISTINCT Make FROM import ORDER BY Make ASC");
} catch (Exception $e) {
echo "Error.";
exit;
}
try {
$modelFilter = $db->query("SELECT DISTINCT Model FROM import ORDER BY Make ASC");
} catch (Exception $e) {
echo "Error.";
exit;
}
?>
所有这些查询都在实时站点上完美地工作,因此db连接显然在工作。我相信如果您像这样更改代码,它将工作: $carview=$db->Prepare选择品牌、型号、颜色、燃油类型、年份、里程、车身类型、车门、变型、发动机规格、价格、变速器、图片功能、维修历史记录、以前的车主、选项、四轮驱动、从导入的完整注册,其中完整注册=“$carId”
但是,在继续之前,请确保让自己了解的危险,否则我可以删除或转储数据库中的每个表,只需将相应的值传递给?id=…Antoan代码就可以了;他的回答的第二部分更为重要。如果您的“id”值是我猜的数字
$_GET['$carId'] = intval($_GET['$carId'])
这是一个简单的方法,也是一个很好的起点
$_GET['$carId'] = intval($_GET['$carId'])