Я хочу написать скрипт в PHP, который принимает текущий URL-адрес страницы, выполняет поиск в базе данных (phpMyAdmin с помощью WAMP) и печатает идентификатор строки с этим URL-адресом. Я написал это, и до точки подключения, все работает, связь с mysql также отлично работает, проблема начинается с этой строки:
$query = "SELECT id FROM search WHERE link = '". $curPageURL . "'";
Может кто-нибудь скажет мне: что я делаю неправильно? это весь сценарий:
<!DOCTYPE html> <html> <body> <?php function curPageURL() { $pageURL = 'http'; if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";} $pageURL .= "://"; if ($_SERVER["SERVER_PORT"] != "80") { $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; } else { $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; } return $pageURL; } echo curPageURL(); //connection $con= mysql_connect("localhost","root","") or die ("Could not connect"); mysql_select_db("search") or die ("Could not select db"); echo "connection succesful"; $query = "SELECT id FROM search WHERE link = '". $curPageURL . "'"; while($row = mysql_fetch_array($query)) { echo $row; } ?> </body> </html>
Вы не выполнили запрос с помощью mysql_query()
и вы не указали переменную $curPageURL
.
<!DOCTYPE html> <html> <body> <?php function curPageURL() { $pageURL = 'http'; if ($_SERVER["HTTPS"] == "on") {$pageURL .= "s";} $pageURL .= "://"; if ($_SERVER["SERVER_PORT"] != "80") { $pageURL .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; } else { $pageURL .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; } return $pageURL; } echo curPageURL(); //connection $con= mysql_connect("localhost","root","") or die ("Could not connect"); mysql_select_db("search") or die ("Could not select db"); echo "connection succesful"; $query = "SELECT id FROM search WHERE link = '". curPageURL() . "'"; $result = mysql_query($query); while($row = mysql_fetch_array($result)) { echo $row; } ?> </body> </html>
Обратите внимание, что метод, который вы использовали, устарел из php 5.5.0. поэтому я предлагаю вам подумать о mysqli или PDO. примеры можно найти в следующих ссылках на PHP
Возможно, вы захотите попробовать что-то вроде этого.
$query = "SELECT id FROM search WHERE link = '". curPageURL() . "'"; $result = mysql_query($query); while($row = mysql_fetch_array($result)) { echo $row['id']; }