首先,我知道这里已经报告了解决此问题的方法,但是我无法弄清楚代码中有什么问题。希望您能指出该怎么做:
我正在尝试搜索数据库中是否存在列出的名称
该数据库在包含的conf.php中定义,如下所示:
<?php
// Zugangsdaten zur Datenbank
$DB_HOST = "localhost"; // Host-Adresse
$DB_NAME = "tst_vhost"; // Datenbankname
$DB_BENUTZER = "me"; // Benutzername
$DB_PASSWORT = "passwort"; // Passwort
// Zeichenkodierung UTF-8 bei der Verbindung setzen (Optional)
// Infos: www.webbausteine.de/tipps/schriftzeichen_richtig_darstellen.php
$OPTION = [PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"];
try {
// Verbindung zur Datenbank aufbauen
$verbindung = new PDO("mysql:host=" . $DB_HOST . ";dbname=" . $DB_NAME,
$DB_BENUTZER, $DB_PASSWORT, $OPTION);
}
catch (PDOException $e) {
// Bei einer fehlerhaften Verbindung eine Nachricht ausgeben
exit("Verbindung fehlgeschlagen! " . $e->getMessage());
}
?>
这是我收到错误消息的地方:
// In der DB nachsehen, ob es schon einen entsprechenden Datensatz gibt
$suchbegriff = trim($ar_info['ServerName']);
echo "<p>Gesucht wird nach: <b>$suchbegriff</b></p>";
$suche_nach = '%'.$suchbegriff.'%';
$suche = $verbindung->prepare("SELECT v_id, v_info, v_root, v_server, v_alias, v_icon_title, v_icon_path, v_create, v_change, v_dev
FROM vhosts
WHERE v_server LIKE ? OR v_alias LIKE ? OR v_info LIKE ?");
$suche->bind_param('sss', $suche_nach,$suche_nach,$suche_nach);
$suche->execute();
$suche->bind_result($v_id, $v_info, $v_root, $v_server, $v_alias, $v_icon_title, $v_icon_path, $v_create, $v_change, $v_dev);
while ($suche->fetch()) {
$daten[] = (object) array('v_id' => $v_id,
'v_info' => $v_info,
'v_root' => $v_root,
'v_server' => $v_server,
'v_alias' => $v_alias,
'v_icon_title' => $v_icon_title,
'v_icon_path' => $v_icon_path,
'v_create' => $v_create,
'v_change' => $v_change,
'v_dev' => $v_dev);
}
echo count($daten);