2013-05-20 2 views
0

Я делаю небольшой веб-сайт с php и mysql. Он работает нормально локально с xampp, но после его загрузки на сервер некоторые страницы не отображают все.Некоторые страницы, не работающие после загрузки на сервер

Мой сайт создан с тегами div для заголовка, меню, центра и нижнего колонтитула. При просмотре источника с сервера я вижу, что html просто останавливается после тега открытия содержимого. Нет содержимого, тега или нижнего колонтитула. Но это только на 2 страницы, в то время как остальные работают.

Единственное, что я изменил перед загрузкой, это подключение к базе данных, но некоторые рабочие страницы используют это без каких-либо проблем.

Вот код страницы add_to_cart, в которой я не работаю.

<?php 
$ID = $_POST['id']; 
$amount = $_POST['amount']; 
if (preg_match("/^[0-9]+$/", $amount) && $amount != 0) { 
    if (isset($_SESSION['cart'][$ID])) { 
     $_SESSION['cart'][$ID]['quantity'] += $amount; 
    } else { 
     $r = @mysqli_query ($dbc, "SELECT price FROM product WHERE product_ID=$ID"); 
     $price = mysqli_fetch_array($r)['price']; 
     echo $price; 
     $_SESSION['cart'][$ID] = array('quantity' => $amount, 'price' => $price); 
    } 
} 
header("Location: products=$ID"); 
?> 
+0

Какие сообщения об ошибках вы видите в журналах? –

+0

Осталась ли страница пустой? Установлено ли display_errors значение On в php.ini? – Ahatius

+0

Похоже, вам нужно отладить этот литль дальше, посмотрев на сообщения об ошибках, которые вы получаете. Еще одна вещь, которую следует отметить, заключается в том, что ваша переадресация не будет работать, если вы уже повторили цену в браузере. –

ответ

2

Возможно, вы используете старую версию PHP. Эта линия работает только в PHP> = 5.4, как
dev-null-dweller отметил:

$price = mysqli_fetch_array($r)['price']; 

возможно изменить на:

$price = mysqli_fetch_array($r); 
$price = $price['price']; 
echo $price; 
+0

Это не синтаксическая ошибка, это функция php 5.4. –

Смежные вопросы