Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Обработка SQL-запроса при помощи PHP

Сообщения:  [1-10]   [11-13] 

 
 автор: DreadfulS   (18.10.2006 в 23:17)   письмо автору
 
   для: cheops   (18.10.2006 в 22:48)
 

вообще ничего, так же пустая страница
сама ссылка запроса
http://dreadfuls.ru/Site/admin/catalog/inf.php?name=admin
таблица в базе client
table | id_name | name | data
таблица 1 admin данные

давайте разберём на примере вашего форума
файл info.php

<?php
   
// Устанавливаем соединение с базой данных
  
require_once("config.php");
   
// Извлекаем информацию из строки запроса
  
$id_author $_GET['id_author'];
  
$id_forum $_GET['id_forum'];
  if(!
preg_match("|^[\d]+$|",$id_author)) exit();
  if(!
preg_match("|^[\d]+$|",$id_forum) && !empty($id_forum)) exit();
  
// Извлекаем информацию о посетителе
  
$query "SELECT * FROM authors 
            WHERE id_author=
$id_author";
  
$ath mysql_query($query);
  if(
$ath)
  {
    
$author mysql_fetch_array($ath);
    
?>
    <p class=linkbackbig><a href="javascript: history.back()">Вернуться назад</a></p>   
    <?php
  
} else puterror("Ошибка при обращении к базе авторов");
?>

например $ath = mysql_query($query); почему $ath, откуда он взялся не пойму?

   
 
 автор: cheops   (18.10.2006 в 22:48)   письмо автору
 
   для: DreadfulS   (18.10.2006 в 18:13)
 

После запроса
<?php
 $client 
mysql_query($query);
?>

добавьте проверку
<?php
 $client 
mysql_query($query);
 if(!
$client) exit("Ошибка - ".mysql_error()."<br>Запрос - ".$query);
?>

Что теперь выводится?

   
 
 автор: DreadfulS   (18.10.2006 в 18:13)   письмо автору
 
   для: cheops   (18.10.2006 в 16:41)
 

с внесением данных в БД разобрался, а вот первоначальный вопрос остался тёмной лошадкой

<?php  
  
// Экранируем спец-символы  
  
if (!get_magic_quotes_gpc()) $_GET['name'] = mysql_escape_string($_GET['name']);  
  
$query "SELECT * FROM client WHERE name = '$_GET[name]'";  
  
$client mysql_query($query);  
  if(
mysql_num_rows($client))  
  {  
    while(
$table mysql_fetch_array($client))  
    {  
       echo 
$table['table']."<br>"  
       
echo $table['id_name']."<br>"  
       
echo $table['name']."<br>"  
       
echo $table['data']."<br>"  
    
}  
  }  
?>

так и не работает:(
http://site/inf.php?name=(что то там) выдаёт пустую страницу, хотя все данные в БД имеются

   
 
 автор: cheops   (18.10.2006 в 16:41)   письмо автору
 
   для: DreadfulS   (18.10.2006 в 15:56)
 

Нет при использовании SELECT-запроса порядок следования полей не имеет значения, в INSERT-запросе имеет (однако синтаксис запроса позволяет его переопределить).

   
 
 автор: DreadfulS   (18.10.2006 в 15:56)   письмо автору
 
   для: cheops   (18.10.2006 в 11:31)
 

хм... передаю все, но передаются не все, тогда вопрос, играет ли роль в каком порядке передаются поля из формы в БД или нет, поскольку порядок записи и порядок полей в БД разнятся?

   
 
 автор: cheops   (18.10.2006 в 11:31)   письмо автору
 
   для: DreadfulS   (18.10.2006 в 09:20)
 

У вас передаются не все параметры - в этом можно убедиться, если вы выведите запрос в окно браузера
<?php
  
echo $query;
?>

   
 
 автор: DreadfulS   (18.10.2006 в 09:20)   письмо автору
 
   для: cheops   (18.10.2006 в 00:46)
 

ошибка добавления - 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 5(7) - в зависимости от заполнения полей

   
 
 автор: cheops   (18.10.2006 в 00:46)   письмо автору
 
   для: DreadfulS   (17.10.2006 в 23:09)
 

Извиняюсь, поторопился :))) конечно же я имел в виду функцию mysql_error()
<?php 
  
} else puterror("ошибка добавления - ".mysql_error()); 
?>

   
 
 автор: DreadfulS   (17.10.2006 в 23:09)   письмо автору
 
   для: cheops   (17.10.2006 в 21:45)
 

ошибка добавления - mysql_error

   
 
 автор: cheops   (17.10.2006 в 21:45)   письмо автору
 
   для: DreadfulS   (17.10.2006 в 20:01)
 

Измените строку
<?php
  
} else puterror("ошибка добавления");
?>

на
<?php
  
} else puterror("ошибка добавления - ".mysql_error);
?>

Что теперь выводится?

   

Сообщения:  [1-10]   [11-13] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования