PHP включает документ, не собирая переменные $ _GET - PullRequest
0 голосов
/ 17 февраля 2012

Все, что я читаю, говорит мне, что это должно работать

страница 1 - это

<?php
$state = $_GET['state'];
$brand = $_GET['brand'];

include ("my_path/state_brand_page_01.php");

?>

страница 2 - это

<?
//get all dealers for this brand and state
session_start();
include ('../../lib/db.php');

//=======================Start Local Insert

  //This stops SQL Injection in POST vars
  foreach ($_POST as $key => $value) {
    $_POST[$key] = mysql_real_escape_string($value);
  }

  //This stops SQL Injection in GET vars
  foreach ($_GET as $key => $value) {
    $_GET[$key] = mysql_real_escape_string($value);
  }

//get dealer

echo $state;
echo $_GET['state']; // NOTHING SHOWING

$dquery = mysql_query("SELECT * FROM dealer WHERE state='$_GET[state]' AND brand='$_GET[brand]' ORDER BY company DESC") or die(mysql_error());


?>

Я ничего не понимаю, никакого эхаВар, нет возврата из базы данных.Страница отлично работает сама по себе, только не при включении

Спасибо

Ответы [ 3 ]

2 голосов
/ 17 февраля 2012

Может быть, ваш путь интерпретируется как URL (например, www.foo.com/state_brand_page_01.php) и поэтому include () выбирает его, используя методы HTTP? Это может привести к потере $ _GET.

См. http://de2.php.net/manual/en/function.include.php

Ниже пример № 2.

2 голосов
/ 17 февраля 2012

попробуйте поставить его в сессию

$_SESSION['state'] = $_GET['state'];

$ _ SESSION ['brand'] = $ _GET ['brand'];

0 голосов
/ 17 февраля 2012

И $ state, и $ _GET ['state'] должны быть доступны, если в строку запроса включено состояние = что угодно.

Когда я вижу проблему с этим, если вы включаете URL-адрес вместо пути к файлуто есть:

include('http://www.test.com/file.php'); 

Он не будет знать о ваших значениях, потому что он анализируется до его включения.(Также считается плохой практикой по соображениям безопасности.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...