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

Форум PHP

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

 

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

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

тема: Проблема с отправкой данных из html в виде массива

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

 
 автор: Login   (25.12.2008 в 14:54)   письмо автору
 
   для: Valick   (25.12.2008 в 14:48)
 

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

  Ответить  
 
 автор: Valick   (25.12.2008 в 14:48)   письмо автору
 
   для: Login   (25.12.2008 в 13:28)
 

Чудес не бывает, но если не хотите искать ошибку - это ваше дело.

  Ответить  
 
 автор: Login   (25.12.2008 в 13:28)   письмо автору
 
   для: Trianon   (25.12.2008 в 13:10)
 

Как тут обстоят дела, один и тот же код используется на разных хостингах.
Вот часть в которой возникает проблема, значение массивов по ходу выполнения скрипта не переписывается.
Вот так не работает:

if(!empty($_POST['uid'])) {
    $del = ql_delete("test", "id = '".$_POST['uid'][0]."'");
    header("Location: /en/test/");
    exit;
}

так как выяснилось что $_POST['uid'][0] выводиться как буква "А", первый символ строки "Array", которая почему-то находится вместо массива в $_POST['uid'], сейчас переписал на:

if(!empty($HTTP_POST_VARS['uid'])) {
    $del = ql_delete("test", "id = '".$HTTP_POST_VARS['uid'][0]."'");
    header("Location: /en/test/");
    exit;
}

и все заработало правильно. В $HTTP_POST_VARS['uid'] находится массив, как и должно быть.

  Ответить  
 
 автор: Trianon   (25.12.2008 в 13:10)   письмо автору
 
   для: Login   (25.12.2008 в 13:03)
 

Вы действительно запускаете именно эти скрипты? Или это только фрагмент, а ранее какие-то еще строки переписывают содержимое массивов?

  Ответить  
 
 автор: Login   (25.12.2008 в 13:03)   письмо автору
 
   для: sim5   (25.12.2008 в 12:06)
 

оно и так в OFF

  Ответить  
 
 автор: Login   (25.12.2008 в 13:03)   письмо автору
 
   для: Valick   (25.12.2008 в 12:05)
 

Странно, но если обратиться через старый $HTTP_POST_VARS то выводит правильно, удивительно. Но $_POST массив в этой версии PHP присутствует, и во всем остальном работает отменно, а тут что-то глючит, видимо дело все-таки в каких-то, настройках.

  Ответить  
 
 автор: Valick   (25.12.2008 в 12:20)   письмо автору
 
   для: Trianon   (25.12.2008 в 12:18)
 

Спасибо

  Ответить  
 
 автор: Trianon   (25.12.2008 в 12:19)   письмо автору
 
   для: sim5   (25.12.2008 в 12:06)
 

А оно как-то влияет на содержимое?

  Ответить  
 
 автор: Trianon   (25.12.2008 в 12:18)   письмо автору
 
   для: Valick   (25.12.2008 в 12:05)
 

начиная с 4.1 (то есть практически вся четвертая ветвь) $_POST имеется.

  Ответить  
 
 автор: sim5   (25.12.2008 в 12:06)   письмо автору
 
   для: Login   (25.12.2008 в 11:46)
 

В php.ini выключить register_globals.

  Ответить  

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

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

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