Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Проверка на правильность

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Fetis
Отправлено: 25 Июля, 2013 - 07:32:00
Post Id



Частый гость


Покинул форум
Сообщений всего: 153
Дата рег-ции: Дек. 2012  
Откуда: Киров, Россия


Помог: 0 раз(а)




Доброе утро, день. Вопрос заключается в том:
в таблице есть ID_шники правильных ответов, например значения:
Спойлер (Отобразить)

Из $_Post приходит массив например 10221,10542, он смотрит: ага, эти значения есть, и больше нет ничего с подобным id_ask, то протолкни id_true_asnwer эти в сессию.
Но может быть случаи, когда в $_Post придет один неправильный id_true_answer, и один правильный. Проверка на количество пришедшего, и количества того сколько ответов в базе имеется.

Помогите пожалуйста составить запрос, и структуру перебора:

у меня было, но не верно...
PHP:
скопировать код в буфер обмена
  1. if(isset($_post['answer'])){
  2. foreach($_post['answer'] as $key => $value){
  3.  
  4. $mys = mysql_query("SELECT Id_true_answer From trues_ask Where Id_true_answer in ($value)");
  5. }
  6.  
  7. }

(Отредактировано автором: 25 Июля, 2013 - 09:00:05)

 
 Top
soffrick
Отправлено: 25 Июля, 2013 - 08:57:13
Post Id



Посетитель


Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012  
Откуда: Россия, Москва


Помог: 17 раз(а)




PHP:
скопировать код в буфер обмена
  1. if($_post['answer']){
  2. foreach($_post['answer'] as $key => $value){
  3.  
  4. $mys = mysql_query("SELECT Id_true_answer From trues_ask Where Id_true_answer in ($value)");
  5. }

как минимум 2 ошибки( on line 1 and 4 )


-----
Правильный вопрос - уже половина правильного ответа!

p.s. индусы повсюду, будьте осторожны!
 
 Top
Fetis
Отправлено: 25 Июля, 2013 - 09:02:44
Post Id



Частый гость


Покинул форум
Сообщений всего: 153
Дата рег-ции: Дек. 2012  
Откуда: Киров, Россия


Помог: 0 раз(а)




soffrick пишет:
как минимум 2 ошибки( on line 1 and 4 )

1: isset добавить забыл, писал торопился сюда.

4: хм, а что в ней не так? Не правильно составлен запрос, это ясно, вот и прошу помочь)

(Отредактировано автором: 25 Июля, 2013 - 09:03:50)

 
 Top
AmsTaFF
Отправлено: 25 Июля, 2013 - 09:04:13
Post Id


Гость


Покинул форум
Сообщений всего: 84
Дата рег-ции: Июнь 2013  
Откуда: Россия, Москва


Помог: 1 раз(а)




Цитата:
ага, эти значения есть, и больше нет ничего с подобным id_ask

в каком смысле и больше ничего нет? это имеет какой-то смысл? Ибо запрос говорит "возьму ка я все значения с 'Id_true_answer in ($value)' "

задача не ясна, но из слов понятно, что нужен count() в mysql и php для подсчета всякого
(Добавление)
+ нужно определиться как ты будешь определять неправильный id_true_answer, если он неправилен, если не найден, то тут просто переменную инкрементишь, когда ничего не было найдено по запросу

(Отредактировано автором: 25 Июля, 2013 - 09:06:41)

 
 Top
EuGen Администратор
Отправлено: 25 Июля, 2013 - 09:07:02
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Fetis
В POST приходят только id ответов? Приходит ли id вопроса? (это было бы логично). Если да, то - выбрать все ответы по присланному id вопроса и сравнить с пришедшими id ответов через, к примеру, array_diff


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
Fetis
Отправлено: 25 Июля, 2013 - 09:08:17
Post Id



Частый гость


Покинул форум
Сообщений всего: 153
Дата рег-ции: Дек. 2012  
Откуда: Киров, Россия


Помог: 0 раз(а)




AmsTaFF пишет:
в каком смысле и больше ничего нет?

Ну т.е: пришли из $_Post 2 ответа Id_answer, если они есть в Id_true_answer и больше никаких значений нет у данного Id_ask в таблице trues_ask, то проталкивай в сессию.
EuGen пишет:
В POST приходят только id ответов? Приходит ли id вопроса? (это было бы логично). Если да, то - выбрать все ответы по присланному id вопроса и сравнить с пришедшими id ответов через, к примеру, array_diff

Эмм, логика понятно, спасибо, позже попробую проверю)

(Отредактировано автором: 25 Июля, 2013 - 09:10:19)

 
 Top
AmsTaFF
Отправлено: 25 Июля, 2013 - 09:09:00
Post Id


Гость


Покинул форум
Сообщений всего: 84
Дата рег-ции: Июнь 2013  
Откуда: Россия, Москва


Помог: 1 раз(а)




PHP:
скопировать код в буфер обмена
  1.  
  2. $wrongs = array();
  3. $rights = array();
  4. foreach($post as $k => $v){
  5.     $founded_in_table = mysql_query_for_count();
  6.     if($founded_in_table == 0) {
  7.         $wrongs[] = $v;
  8.     } else {
  9.         $rights[] = $v;
  10.     }
  11. }
  12.  


может быть типа токого нужно?

(Отредактировано автором: 25 Июля, 2013 - 09:09:38)

 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB