Больше проблемы с php, чем что-либо еще.Не передавать значение из PHP в echo
У меня действительно странная проблема. Я делаю запрос _POST от PHP, который работает для моего запроса, но когда я пытаюсь включить этот же номер в эхо, он не работает. Что происходит?
Я делаю следующее:
$pageNumber = $_POST['pageNumber'];
$startIndex = $pageNumber*10;
$sqlQuery = "select * from my_table id asc limit $startIndex, 10";
// this works
$string = "";
$fetcheddata = $mysqlConnection->query($sqlQuery);
if($fetcheddata!=null && $fetcheddata->num_rows>0){
while ($row = $fetcheddata->fetch_array(MYSQLI_ASSOC)){
$string.="<p>".$row['id'].",".$row['first_name'].",".$row['last_name']." </p>";
}
}
// this also works when I load with different data and
// I know this because the data from the database is of
// the right index which means $pageNumber IS INFACT incrementing
echo "<div class='newData'>INFO: ".$string. "</div><div id = 'dom-target' style='display : none'>".$pageNumber."TESTING META DATA</div>";
// but for some reason this doesn't give me the correct
// $pageNumber, it always gives me zero.
, когда я пытаюсь повторить вне $ PageNumber в HTML, я всегда получаю 0 на запрос, даже если число явно приращением, поскольку вся запрос работает, иначе он не будет правильно извлекать данные из базы данных. Но он работает! Так почему же он не распечатывается правильно? Я сошел с ума?
EDIT: только для пояснения, запрос РАБОТАЕТ, последняя строка кода не выводит правильный $ pageNumber, хотя это число exsists, и я знаю, что , потому что запрос работал.
Это журнал ошибок PHP:
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using Users-Computer.local. Set the 'ServerName' directive globally to suppress this message
[Wed Feb 25 12:58:16.260705 2015] [mpm_prefork:notice] [pid 51] AH00163: Apache/2.4.9 (Unix) PHP/5.5.14 configured -- resuming normal operations
[Wed Feb 25 12:58:16.260985 2015] [core:notice] [pid 51] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
РЕШЕНИЕ:
Я нашел решение этой проблемы только с помощью другой $ _POST ('новаяПеременная'). По какой-то причине, когда я использовал запрос sql для чего-либо перед запросом, переменная php потеряла ее значение. Я не знаю, почему это было сделано, но решение было просто использовать каждую переменную один раз. Я видел, что этот вопрос выложил несколько других мест.
В частности, я указал echo "<div class = 'metadata'>".$sqlQuery."</div>";
сразу после определения $sqlQuery
. До этого запрос работал, после этого запрос не работал. Я до сих пор не знаю, почему.
Вы писали: * Сейчас он работает * - Вы имели в виду сказать: Он НЕ работает? Я не понимаю. –
Я хотел сказать, что НЕ работает. Это было плохо. – 1N5818