您可能知道我的PHP代码有什么问题吗?
我无法连接到我的数据库:
$db_link = mysqli_connect (db4free.net,user,pass,database);
可能是,主持人错了吗?
我刚收到此错误消息:
Parse error: syntax error, unexpected '$db_link' (T_VARIABLE) in /users/dbase/www/index.php on line 10
完整代码(https://ghostbin.com/paste/u4sza):
<!DOCTYPE html>
<html>
<head>
<title>SQL ABFRAGE</title>
</head>
<body>
<?php
$db_link = mysqli_connect ('db4free.net:3306',user,pass,database); //Hier SQL Server Anmeldedaten eintragen!
$sql = 'select * from kunden;'; //HIER SQL ABFRAGE
$db_erg = mysqli_query( $db_link, $sql );
if ( ! $db_erg ){
die('Ungültige Abfrage: ' . mysqli_error());//Hier werden Error Meldungen definiert
}
echo '<table border="1">'; //Es wird eine Tabelle erstellt
while ($zeile = mysqli_fetch_array( $db_erg, MYSQL_ASSOC)){ //für jeden Datensatz wird folgendes ausgegeben
echo "<tr>";
echo "<td>". $zeile['kunr'] . "</td>"; //HIER Tabellenspalte zuweisen!
echo "<td>". $zeile['kuname'] . "</td>"; //HIER Tabellenspalte zuweisen!
echo "<td>". $zeile['kuvorna'] . "</td>"; //HIER Tabellenspalte zuweisen!
echo "<td>". $zeile['kustras'] . "</td>"; //HIER Tabellenspalte zuweisen!
echo "<td>". $zeile['kuplz'] . "</td>"; //... Je nach dem, wie viele Spalten du hast.
echo "<td>". $zeile['kuort'] . "</td>"; //...
echo "</tr>";
}
echo "</table>"; //Ende der Tabelle
mysqli_free_result( $db_erg ); //SQL Werte werden aus dem Arbeitsspeicher gelöscht
?>
</body>
</html>
答案 0 :(得分:0)
把它放在这样的引号中
mysqli_connect('db4free.net',user,pass,database)
答案 1 :(得分:0)
问题似乎是由代码中的某些非ASCII字符引起的。如果在代码上运行十六进制转储,您将看到代码中的几乎每个空行都以八位字节e2 80 8b
开头。
例如,第9-10行以:
开头e2 80 8b 0d 0a 24 64 62 5f 6c 69 6e 6b 20 3d 20 .....$db_link =
e2 80 8b
是U+200B ZERO WIDTH SPACE
的UTF-8编码。如果删除空白行并重新键入它们,代码应该可以正常工作 1 。
在编写和编辑源代码时,请务必使用文本编辑器,而不是文字处理程序。
1 您应该在进一步使用$db_link
之前检查mysqli_connect()
来电是否成功,并在输出数据时使用htmlspecialchars()
来自数据库。
答案 2 :(得分:-1)
尝试删除此行的最后一个引用
$sql = 'select * from kunden;';
并制作
$sql = 'select * from kunden';
我更喜欢复制并粘贴