由于某些原因,我的其他声明没有触发,我认为我的方法由于某种原因没有返回true。
主要代码
function msg($content)
{
//function that echos out page with content in it
}
$car=new yamiko_car;
if(!$car->add())//returns bool false on fail and true on success
{msg($car->error);}
else{msg('Car has been added');}
并且它不会在失败的情况下返回false,我测试数据但只是在那里发表评论。已经测试了一切,并且工作正常。
public function add()
{
//gets data succesfully
//MySQL
$this->query("INSERT INTO car (year, make, model, price, obo, img1, img2, img3, img4, description)
VALUES ('$year', '$make', '$model', '$price', '$obo', '$img1', '$img2', '$img3', '$img4', 'txt') ");
echo 'mysql added';
return true;
}
function query($sql, $result=false)
{
$query=mysql_query($sql);
if(!$query){$this->mysqlError.=mysql_error().'<br />';return false;}
if($result==false){return true;}
else{return $query;}
}
我添加了echo语句,它触发了很好的...
当出现错误时,它返回false并运行msg()
我将语句切换到if($car->add()){msg('car added')}else{msg($car->error);}
if或else语句都不会触发
此外,if语句之后的任何代码都不会触发,并且没有php或mysql错误。
答案 0 :(得分:1)
听起来好像PHP可能会无声地崩溃,解释就会停止。尝试将PHP error level设置为类似的内容(在PHP脚本的开头):
error_reporting(E_ALL);
答案 1 :(得分:-1)
我认为你错过了括号:
$car=new yamiko_car;
应该是
$car=new yamiko_car();