【发布时间】:2014-05-29 18:09:54
【问题描述】:
因此,由于缺乏 PHP 和 MySQL 方面的经验,我正在根据这个 YouTube 教程 (PHPAcademy) 为我的网站创建一个 URL Shortener,我觉得我很快就学会了,但是当我收到此错误消息时提交网址。
解析错误:语法错误,第 37 行 /home/langers/public_html/r/shorten/classes/Shortener.php 中的意外“更新”(T_STRING)
但是,在代码中,它提到的行和暗示的 T_STRING 'UPDATE' 是意外的,在教程中是需要的。
<?php
class Shortener {
protected $db;
public function __construct() {
//Demo Purposes
$this->db = new mysqli('localhost', 'langers_langers', 'password','langers_website');
}
protected function generateCode($num){
return base_convert($num, 10, 36);
}
public function makeCode($url){
$url = trim($url);
if(!filter_var($url, FILTER_VALIDATE_URL)) {
return '';
}
$url = $this->db->escape_string($url);
//Check if URL already exists
$exists = $this->db->query("SELECT code FROM links WHERE url ='{$url}'");
if($exists->num_rows){
return $exists->fetch_object()->code;
} else {
//Insert record without a code
$insert->$this->db->query("INSERT INTO links (url, created) VALUES ('{$url}', NOW());
//Generate code based on id
$code = $this->generateCode($this->db->insert_id);
//Update Record
$this->db->query("UPDATE links SET code = '{$code}' WHERE url = '$url'");
return $code;
}
}
public function getUrl($code){
}
}
?>
关于如何修复它以便它仍然更新 MySQL 数据库的任何想法?
谢谢
【问题讨论】:
-
在第 31 行,您还没有关闭报价。
-
看语法高亮。