Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
4 / 4 / 3
Регистрация: 28.07.2010
Сообщений: 186

Роблема вывода переменной из базы

26.12.2010, 05:57. Показов 736. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!

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

PHP
1
2
3
4
5
6
7
8
        mysql_query("SELECT gol,gol_out FROM gdb_sites");
 
                       while($r = $DB->fetch_row())
        {   
            $stat['gol'] += $r['gol'];
            $stat['gol_out'] += $r['gol_out'];
        }
$this->skin .= $admin->add_td_row( array ('Total GOL:', $stat['gol'], 'Всего голов:', $stat['gol_out']), 2);
Если делаю так

PHP
1
$DB->query('SELECT gol,gol_out FROM gdb_sites');
Выводит ошибку
HTML5
1
2
3
MySQL Error: 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 '' at line 1
 
Query: SELECT gol,gol_out FROM gdb_sites  WHERE
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.12.2010, 05:57
Ответы с готовыми решениями:

Роблема в реализации интерфейса
import java.util.ArrayList; interface DoSomeThing { // интерфейс для того что бы менять местами 2 элемента Cell в массиве void...

UPDATE роблема с кодом
UPDATE student, hostel SET student.IdHostel = student.IdFac, hostel.Numberz=hostel.Numberz+1 WHERE(pilgi = 1 & student.IdHostel=0) ...

Проверка вывода из базы
Здравствуйте, у меня такая проблема как сделать, то ли добавить в массив то ли как. У меня из другой таблицы может выводится 100 или...

7
 Аватар для Sulik78
450 / 203 / 27
Регистрация: 23.12.2010
Сообщений: 645
26.12.2010, 06:30
SELECT gol,gol_out FROM gdb_sites
и вот
PHP
1
$DB->query('SELECT gol,gol_out FROM gdb_sites');
SELECT gol,gol_out FROM gdb_sites WHERE -- не верный запрос

видишь разницу ошибка в запросе ваш скрипт к запросу гдето добавляет WHERE без нечего а это ошибка.
можно сделать так
PHP
1
2
3
4
5
6
7
$query = mysql_query("SELECT gol,gol_out FROM gdb_sites");
 
                       while($r = mysql_fetch_array($query))
                {       
                        $stat['gol'] += $r['gol'];
                        $stat['gol_out'] += $r['gol_out'];
                }
но раз у вас какойто класс $DB лучше разобраться с ним
1
4 / 4 / 3
Регистрация: 28.07.2010
Сообщений: 186
27.12.2010, 04:07  [ТС]
ошибка
PHP
1
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/sites/www/sources/Admin/index.php on line 27
$DB

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class DB
{   var $query_count = 0;
    
function DB()
    {
        global $gdb, $root_path;
        
        // Grab configuration of the database
        require $root_path."config.php";
        $this->config = explode(",", $config);
        
        // Connect to the database
        $this->connection = mysql_connect($this->config['0'], $this->config['1'], $this->config['2']);
        // Select Database
        if(!mysql_select_db($this->config['3'], $this->connection))
        {   $this->error(); }
        mysql_set_charset( $this -> config[6], $this -> connection );
Добавлено через 13 минут
$DB

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
class DB
{   var $query_count = 0;
    
function DB()
    {
        global $gdb, $root_path;
        
        // Grab configuration of the database
        require $root_path."config.php";
        $this->config = explode(",", $config);
        
        // Connect to the database
        $this->connection = mysql_connect($this->config['0'], $this->config['1'], $this->config['2']);
        // Select Database
        if(!mysql_select_db($this->config['3'], $this->connection))
        {   $this->error(); }
        mysql_set_charset( $this -> config[6], $this -> connection );
    
function config()
    {   $query = $this->fetch_row($this->query("SELECT * FROM gdb_config WHERE id='".$this->config['5']."'"));
 
        if($this->count() != 1)
        {   $this->error("нет конфигурации.");   }
        
        foreach($query as $n => $v)
        {   $return[$n] = stripslashes($v); }
        
        return $return;
    }
 
function query($query)
    {
        if(preg_match("/INSERT/", $query) OR preg_match("/UPDATE/", $query) AND $this->config['4'] != "gdb_")
        {   $query = preg_replace("/mtl_(\S+?)([\s\.,]|$)/", $this->config['4']."\\1\\2 ", $query, 1);  }
        else if($this->config['4'] != "mtl_")
        {   $query = explode(" WHERE ", $query);        
            $query[0] = preg_replace("/gdb_(\S+?)([\s\.,]|$)/", $this->config['4']."\\1\\2 ", $query[0]);   
            $query = $query[0]." WHERE ".$query[1];
        }
        
        $this->query_count++;
        $this->query_data[] = $query;
        $this->query = $query;
        $this->query_id = mysql_query($query, $this->connection);
 
        if(!$this->query_id)
        {   $this->error(); }
        
        return $this->query_id;
    }
    
function fetch_row($rid="")
    {   
        if($rid == "")
        {   $rid = $this->query_id;  }
        
return mysql_fetch_assoc($rid);
        
    }
function count($rid="")
    {   if($rid == "")
        {   $rid = $this->query_id;  }
        
    return mysql_num_rows($rid);    }
весь класс
0
 Аватар для Sulik78
450 / 203 / 27
Регистрация: 23.12.2010
Сообщений: 645
27.12.2010, 08:04
noobasik, вы дали ошибку и класс но в данном классе не разу не выполняется функция mysql_fetch_array()
0
4 / 4 / 3
Регистрация: 28.07.2010
Сообщений: 186
28.12.2010, 07:38  [ТС]
и как быть?
0
 Аватар для Sulik78
450 / 203 / 27
Регистрация: 23.12.2010
Сообщений: 645
28.12.2010, 08:18
попробуйте так
PHP
1
2
3
4
5
6
7
                else if($this->config['4'] != "mtl_")
                {       $query = explode(" WHERE ", $query); 
                        if (sizeof($query) > 0) {
                           $query[0] = preg_replace("/gdb_(\S+?)([\s\.,]|$)/", $this->config['4']."\\1\\2 ", $query[0]);   
                           $query = $query[0]." WHERE ".$query[1];
                        }
                }
0
4 / 4 / 3
Регистрация: 28.07.2010
Сообщений: 186
29.12.2010, 05:58  [ТС]
HTML5
1
2
3
MySQL Error: 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 'WHERE' at line 1
 
Query: INSERT INTO gdb_sessions  (id,admin,ip,last_activity,user_id) VALUES ('22bbfbf12bb112bb12bf0','1','543453453','1254234','1') WHERE
0
 Аватар для Sulik78
450 / 203 / 27
Регистрация: 23.12.2010
Сообщений: 645
29.12.2010, 09:58
noobasik, ошибка в том, что Вы добавляете WHERE туда где этого не нужно делать. и причем пустой даже прир выборе SELECT
SQL
1
SELECT * FROM `table` WHERE `id` = '25'
после where указывать надо то как искать в БД
запрос который я показал он ищет все записи в таблице table с ID = 25
а Вы вставляете в базу новую запись это абсурд
запрос должен быть
SQL
1
INSERT INTO `gdb_sessions`  (id,admin,ip,last_activity,user_id) VALUES ('22bbfbf12bb112bb12bf0','1','543453453','1254234','1');
Добавлено через 17 минут
noobasik, сейчас попробовал Ваш класс он работает, ну по крайней мере в БД запись вставил.
а вот эту строку:
PHP
1
if(preg_match("/INSERT/", $query) OR preg_match("/UPDATE/", $query) AND $this->config['4'] != "gdb_")
лучше перепешите
PHP
1
if(preg_match("/INSERT/i", $query) OR preg_match("/UPDATE/i", $query) AND $this->config['4'] != "gdb_")
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.12.2010, 09:58
Помогаю со студенческими работами здесь

Как сравнить переменную со строкой базы данных или как присвоить переменной значение строки базы данных ?
подскажите пожалуйста как мне сравнить переменную типа string с каким нибудь строкой базы данных. Или как присвоить значение строки базы...

Проблема вывода переменной на GLCD
Пытаюсь вывести переменную на GLCD. На LCD проблем нет.Среда CodeVision 3.12.Выдает ошибку :Error: C:\Users\Tokarev10\Desktop\Новая папка...

Использование переменной в формате вывода
Здравствуйте) Возможно ли в формате вывода fprintf внутри формата использовать переменную, которая допустим отвечает за количество знаков...

Отредактировать код вывода переменной
Здравствуйте! Есть у меня блок в котором есть число и спан, в котором отображается выбранное число. Нужно, чтобы если в блоке одно число в...

Присвоение переменной вывода команды
Не могу понять как на батче это работает. Нашел в сети пример для Identify от ImageMagick for /F "usebackq" %%I in (`identify ^...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 01.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 31.01.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru