2015-01-23 2 views
2

Я очень новичок в мире MySQL, поэтому мне жаль, если это может быть что-то очевидное!MySQL - Как использовать имя файла как часть запроса?

То, что я пытаюсь сделать, это запрос, который выводит данные о ценах на разные страницы, в настоящий момент он отлично работает, однако на каждой странице я использую запрос, который мне нужно изменить имя товарной страницы в запросе. Как я могу автоматически получить имя файла страницы (исключая .PHP) и вставить это имя в запрос? (У меня есть соответствующий столбец в БД со всеми разными названиями страниц)

$query=("SELECT * 
     FROM database e 
     JOIN validdate1 r ON e.datevalid1=r.id 
     JOIN validdate2 d ON e.datevalid2=d.id 
     WHERE productpage='page01' 
     ORDER BY price2, 

Так вместо ручного ввода page01, я хочу, чтобы быть извлечена из имени файла (в данном случае является page01.php).

Спасибо заранее!

+0

посмотреть на options: 'print_r ($ _ SERVER);' –

+0

, если единственное, что меняется, это имя файла, вам нужна только одна страница, а затем используйте mod rewrite для отправки всего трафика на него. –

+0

Возможный дубликат [Получить текущее имя файла сценария] (http://stackoverflow.com/questions/4221333/get-the-current-script-file-name) – kittykittybangbang

ответ

0

Прочитайте название PHP страницы, используя ниже код

$page=basename($_SERVER['PHP_SELF']); /* Returns PHP File Name */ 
$page_name=str_replace(".php","",$page); 

$query=("SELECT * 
    FROM database e 
    JOIN validdate1 r ON e.datevalid1=r.id 
    JOIN validdate2 d ON e.datevalid2=d.id 
    WHERE productpage='$page_name' 
    ORDER BY price2, 
+0

Это сделало трюк! Большое спасибо Sameeraa4ever (и все остальные, которые ответили на это!) –

1

Использование переменной интерполяции в запросе:

$pageName = basename(__FILE__, '.php'); 
$query=("SELECT * FROM database e JOIN validdate1 r ON e.datevalid1=r.id JOIN validdate2 d ON e.datevalid2=d.id WHERE productpage='$pageName' ORDER BY price2"); 

... или использовать подготовленное заявление и представить имя страницы в качестве аргумента

0

Если ссылка на страницу есть, то l икэ это: http://yourhost/abc/page1

Вы можете получить/а/стр.1 с помощью этого:

$path = parse_url($url, PHP_URL_PATH) 

В зависимости от структуры вашего URL, вы можете использовать взрываетесь, чтобы получить страницу 1