当然,你没有做错什么,因为它在另一台服务器上工作。
它是导致错误的远程服务器环境。
但是,无论您使用的是mysql还是mysqli,您都应该做一件事 - 您必须检查查询结果并处理错误。
至少做这种方式:
$sql = "SELECT count(*) FROM languagep l INNER JOIN pages p
ON (l.languagePageBelongs=p.pageID) WHERE p.pageBelongs=0";
$res = $con->query($sql) or trigger_error($con->error."[$sql]");
- 所以,你会被告知MySQL错误的,并能够采取适当的行动。
但你的代码还有另一个问题 - mysqli。
不要使用mysqli。代替使用PDO。
这将为您节省很多未来的头痛。
PDO是简单而强大的使用
第一,创建一个连接
$dsn = 'mysql:dbname=test;host=localhost;charset=utf8';
$opt = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC
);
$pdo = new PDO($dsn, $user, $pass, $opt);
然后用它来运行查询:
$sql = "SELECT count(*) FROM languagep l INNER JOIN pages p
ON (l.languagePageBelongs=p.pageID) WHERE p.pageBelongs=0";
$sth = $pdo->prepare($sql);
$sth->execute();
$totalRows = $sth->fetchColumn();
,如果你不仅需要计数,但所有的数据太:
$sql = "SELECT * FROM languagep l INNER JOIN pages p
ON (l.languagePageBelongs=p.pageID) WHERE p.pageBelongs=0";
$sth = $pdo->prepare($sql);
$sth->execute();
$data = $sth->fetchAll();
$totalRows = count($data);
查看'$ row_getMainPage'通过'var_dump()'返回给你什么。 – Aborted 2013-02-26 06:15:13
代码可能有些错误。看看这个。希望能帮助到你。 http://stackoverflow.com/questions/13247702/code-works-fine-on-localhost-but-not-on-remote-server – Kibz 2013-02-26 06:20:16