我想创建一个页面,用户可以在其中添加信息。 我已经创建了那个页面,但我真正的问题是它的代码..
我遇到了一些问题,代码的一部分:
<?php
//Connect to DB
$db = mysql_connect("localhost","USER","PASS") or die("Database Error");
mysql_select_db("DB",$db);
//Get ID from request
$idstire = isset($_GET['idstire']) ? (int)$_GET['idstire'] : 0;
//Check id is valid
if($idstire > 0)
{
//Query the DB
$resource = mysql_query("SELECT * FROM stiri2 WHERE idstire = " . $idstire);
if($resource === false)
{
die("Eroare la conectarea cu baza de date");
}
if(mysql_num_rows($resource) == 0)
{
die("Se pare ca stirea nu mai exista, sau a fost stearsa. <a href='http://www.wanted-web.ro'>ACASA</a>");
}
$user = mysql_fetch_assoc($resource);
echo "
<div class='main-article-content'>
<h2 class='article-title'>asd</h2>
<div class='article-photo'>
<img src='" . $user['poza'] . "' class='setborder' alt='' />
</div>
<div class='article-controls'>
<div class='date'>
<div class='calendar-date'>" . $user['data'] . "</div>
</div>
<div class='right-side'>
<div class='colored'>
<a href='' class='icon-link'><span class='icon-text'></span>Printeaza articol</a>
<a href='#' class='icon-link'><span class='icon-text'></span>Trimite prietenilor</a>
</div>
<div>
<a href='#' class='icon-link'><span class='icon-text'></span>de Cristian Cosmin D.</a>
<a href='#' class='icon-link'><span class='icon-text'></span>39 comentarii</a>
</div>
</div>
<div class='clear-float'></div>
</div>
<div class='shortcode-content'>
<p>" . $user['nume'] . " , " . $user['prenume'] . " , " . $user['varsta'] . " , " . $user['localitatea'] . "</p>
</div>
</div>
";
}
$query = "UPDATE stiri2 SET accesari = accesari + 1 WHERE idstire=\"" . $idstire . "\"";
$result = mysql_query($query) OR die(mysql_error());
?>
从这里向我显示错误:
if(mysql_num_rows($resource) == 0)
{
die("Se pare ca stirea nu mai exista, sau a fost stearsa. <a href='http://www.wanted-web.ro'>ACASA</a>");
}
我真的不明白为什么!?
有人可以解释一下吗? 谢谢!
答案 0 :(得分:1)
问题是,你的SQL语句没有任何结果。
请检查您的数据库是否包含此 idstire 的行。
答案 1 :(得分:1)
mysql_query应该将第二个参数作为连接,在你的情况下是$ db
$resource = mysql_query("SELECT * FROM stiri2 WHERE idstire = " . $idstire,$db);
如果这也不起作用,那么使用mysql_error知道确切的错误
$row=mysql_num_rows($resource);
if($row)
{
}
else
{
mysql_error();
}
这将显示mysql_num_rows中是否存在problwm
答案 2 :(得分:1)
如果未设置$ _GET ['idstire'],则将$ idstire设置为0.表中是否有idstire = 0的条目?
您可以打印您的php查询,并将$ idstire替换为其值。接受该查询并在phpmyadmin中执行以查看错误。还要验证查询中使用的$ idstire的值是否存在行。