我最近开始学习php& MySQL的, 我想知道这个有什么问题
function show(){
$query=mysql_query(" SELECT * FROM family ");
if (!$query) {
die("invalid query ".mysql_error());
}
while ($row=mysql_fetch_array($query)) {
echo "<tr>
line 24 ===><td><?php echo $row['id']; ?></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['lname']; ?></td>
</tr>";
}
}
你可以看到我有一个显示我的数据字段的功能, 我在另一页面上有一张桌子,我只想包括&amp;调用该函数,我的变量出现在表中,但我不断收到这个愚蠢的错误: 帮助PLZ
解析错误:语法错误,意外'(T_ENCAPSED_AND_WHITESPACE),期望标识符(T_STRING)或变量(T_VARIABLE)或数字(T_NUM_STRING)在第24行的C:\ xampp \ htdocs \ php \ lib.php中
对于那些想建议以下代码的人:
echo "<tr>
<td>". $row['id'] ."</td>
<td>". $row['name'] ."</td>
<td>". $row['lname'] ."</td>
</tr>";
我确实试过这个并且它有效,但它不会在表格行中显示我的日期 我的目的是,我想让它在表格行中显示我的每个数据变量,还有其他任何你知道的好方法吗?
答案 0 :(得分:3)
将<td><?php echo $row['id']; ?></td>
更改为<td>".$row['id']."</td>
您正在尝试将PHP代码放入字符串中,这将无法正常工作。只需使用'dot'运算符来连接字符串。请查看here以获取更多信息。
按要求编辑:
echo "<table>";
while ($row=mysql_fetch_array($query)) {
echo "<tr>
<td>".$row['id']."</td>
<td>".$row['name']."</td>
<td>".$row['lname']."</td>
</tr>";
}
echo "</table>";
答案 1 :(得分:0)
您需要关闭并重新打开PHP标记,而不是回显:
function show(){
$query=mysql_query(" SELECT * FROM family ");
if (!$query) {
die("invalid query ".mysql_error());
}
while ($row=mysql_fetch_array($query)) {
?>
<tr>
<td><?php echo $row['id']; ?></td>
<td><?php echo $row['name']; ?></td>
<td><?php echo $row['lname']; ?></td>
</tr>
<?php
}
}
或者,不打开和关闭:
function show(){
$query=mysql_query(" SELECT * FROM family ");
if (!$query) {
die("invalid query ".mysql_error());
}
while ($row=mysql_fetch_array($query)) {
echo "<tr>
<td>". $row['id'] ."</td>
<td>". $row['name'] ."</td>
<td>". $row['lname'] ."</td>
</tr>";
}
}
答案 2 :(得分:0)
试试这个
function show()
{
$query = mysql_query("SELECT * FROM `family`");
//check if query failed
if (!$query) {
die("invalid query ".mysql_error());
}
//if there are more than 0 rows in table, we create the table
if (mysql_num_rows($query) > 0)
{
echo "<table>";
//loop thru array and create table rows
while ($row = mysql_fetch_array($query))
{
echo "<tr>
<td>". $row['id'] ."</td>
<td>". $row['name'] ."</td>
<td>". $row['lname'] ."</td>
</tr>";
}
echo "</table>";
}
else //no rows, we display an error
{
echo 'Table is empty';
}
}
也使用mysqli_ *因为mysql_ *被折旧