我有这段代码,我只想显示表中的一条记录:
<?php
session_start();
echo $_SESSION['idu'];
$connect=mysql_connect("localhost","root","");
mysql_select_db("bilet");
$queryreg=mysql_query("SELECT * FROM oferte WHERE idu='$_SESSION['idu']' ");
while($row = mysql_fetch_array($queryreg)):
{
echo $row['adresa'];
echo $row['descriere'] ;
echo $row['stele'] ;
echo $row['pret'] ;
}
endwhile;
?>
我收到这个错误:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in D:\xampp\htdocs\bilet\viz.php on line 6.
The table has more then 4 rows , but i just wanna see if it works.
最佳答案
具体问题与您的第 6 行有关(正如错误提示的那样)。您没有将 session 变量正确地包含到字符串中。试试这个:
$queryreg = mysql_query("SELECT * FROM oferte WHERE idu='" . $_SESSION['idu'] . "'");
话虽这么说,但还有一些其他事项需要牢记。如果用户曾经设置过 $_SESSION['idu']
,那么您的代码很容易受到 SQL 注入(inject)攻击(阅读 here 了解如何防止它)
顺便说一句,正如@meda 所指出的,您实际上使用两种不同的方式来执行 while 循环。虽然你在技术上是正确的,但它肯定不是推荐的方法。我建议选择其中之一:
// Choice 1: Recommended
while ($row = mysql_fetch_array($queryreg)) {
echo $row['adresa'];
echo $row['descriere'];
echo $row['stele'];
echo $row['pret'];
}
// Choice 2
while ($row = mysql_fetch_array($queryreg)):
echo $row['adresa'];
echo $row['descriere'];
echo $row['stele'];
echo $row['pret'];
endwhile;
关于php - 在 php 中显示来自 mysql 的某些行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24377221/