Задавайте вопросы, мы ответим
Вы не зашли.
Я еще только начал изучать php и mysql
Возникла ошибка - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''bytov' WHERE e = 'Холодильники'' at line 1
что я делаю не так?
кусок кода
<?php
// Будем выводить по 2 записи на листе:
$number = 5;
// Читаем сдвиг из GET-массива:
$offset = isset($_GET['offset']) ? (int)$_GET['offset'] : 0;
// Коннект до базы данных
$link = mysql_connect('localhost', 'sergei', 'sergei','');
if (!$link) die('Не могу соединиться с базой данных');
// Выбираем базу данных
mysql_query("set names 'utf8'");
mysql_select_db('zakaz', $link);
// Выполняем запрос 'посчитать число записей'
$result = mysql_query("SELECT COUNT(*) FROM `bytov` WHERE e = 'Холодильники'", $link);
// Теперь в переменной $total общее число записей
$total = mysql_result($result, 0);
echo $total;
$menu = getMenuofPages($total, $number, $offset);
?>
<?
function getMenuofPages($total, $number, $offset) {
// Подфункция определяет есть ли уже в текущем url get-данные
// и дописывает соответственно нужный offset:
function getGoodUrl($url, $cur) {
if ($_SERVER['QUERY_STRING'] == "") {
return $url."?offset=".$cur;
}else {
if (substr_count($_SERVER['QUERY_STRING'], "offset=") > 0) {
$url = preg_replace("/offset=\d+/i", "offset=".$cur, $url);
return $url;
}else {
return $url."&offset=".$cur;
}
}
}
// Если общее число меньше числа записей, которые мы должны вывести на
// странице, то ничего не делаем:
if ($total <= $number) {
return;
}
$url = $_SERVER['REQUEST_URI'];
$int = intval($total / $number); // Целая часть от деления
$rest = $total % $number; // Остаток от деления
$menu = "";
// Сначала перебираем целые части
for ($i = 0; $i < $int; $i++) {
$cur = $i * $number;
if ($cur == $offset) { // Проверка на текущую страницу
$menu .= " | ".($cur + 1)."-".($cur + $number);
}else {
$menu .= " | <a href=\"".getGoodUrl($url, $cur)."\">".
($cur + 1)."-".($cur + $number)."</a>";
}
}
// Потом остаток (если есть)
if ($rest > 0) {
$cur += $number;
if ($cur == $offset) { // Проверка на текущую страницу
if ($rest == 1) {
$menu .= " | ".($cur + 1)." |";
}else {
$menu .= " | ".($cur + 1)."-".($cur + $rest)." |";
}
}else {
if ($rest == 1) {
$menu .= " | <a href=\"".getGoodUrl($url, $cur)."\">".($cur + 1)."</a> |";
}else {
$menu .= " | <a href=\"".getGoodUrl($url, $cur)."\">".
($cur + 1)."-".($cur + $rest)."</a> |";
}
}
}else {
$menu .= " |";
}
return $menu;
}
?>
<?php
$result = mysql_query("SELECT * FROM 'bytov' WHERE e = 'Холодильники' LIMIT $offset, $number",$link);
if(!$result)
{
echo "Возникла ошибка - ".mysql_error()."<br>";
echo $sql;
exit();
}
echo $menu;
while ($row = mysql_fetch_array($result)) {
echo '<div>'.$row[7].' : '.$row[3].'</div>';
print ("<form method='post' action='' class='jcart'>
<fieldset>
<input type='hidden' name='jcartToken' value='");
?>
Неактивен
Имя таблицы нужно всегда заключать в обратные кавычки, а не в одинарные прямые (`bytov` а не 'bytov')
Неактивен
Спасибо большое!
Все получилось!
Неактивен