[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Простой тест на PHP
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20
maruo
Valik - ну наведите на мысль как лучше (правильно) сделать:

Надо вывести только 4 варианта ответа 1 валидный обязательно. (даже если в таблице более 4х вариантов ответов)

Через запрос к бд вытащить 4 ответа.
Или вытащить сначала все какие есть , а потом уже в цикле?
inpost
Зря вы так негативно к видео-курсам. Посмотрите внимательно на этот пример, человеку на 9-ой странице объяснили как надо, а на 11-ой у него снова та же ошибка, он или не слушает вас, или троллит.
Курсы упрощают доступ к знаниям, но не исправляют же внутренние проблемы человека. Если он не слушает вас, то он с таким же успехом не слушает и курсы, а значит ничего после них не впитывает. Типичный пример Медведя, он утверждает, что прошел курс мой за неделю (хотя лучший результат - 3 месяца), а в итоге создаёт темы на форуме, которые были разжеваны в видео. Почему такое произошло? Да плохо слушал, вот и всё.
Ах да, ещё в защиту скажу, что курс - это не 10 учебников, а лишь от 1/5 до 1/2 объема учебника ОДНОГО учебника, конечно им сыт не будешь, а потом любой будет вынужден повышать квалификацию другими путями.

Так и ТС, если он плохо слушает, то есть огромная вероятность, что он и плохо читает и чтение 100500 книг не исправит ситуацию.

maruo
Тебе ответили на 9-ой странице, ты опять начинаешь. Почему?
Цитата
сначала объявляется переменная, потом используется

Это был ответ на этот скрин-шот с 11 страницы:
user posted image

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Valick
Цитата (maruo @ 20.12.2015 - 14:57)
Или вытащить сначала все какие есть , а потом уже в цикле?

это не наш метод

проще всего объединить два запроса при помощи UNION первый с правильным ответом, и второй с 4-мя рандомными неправильными ограничив их LIMIT ' ом

Цитата (inpost @ 20.12.2015 - 15:00)
Это был ответ на этот скрин-шот с 11 страницы:

вопрос заключался совсем в другом

_____________
Стимулятор ~yoomoney - 41001303250491
maruo
Цитата
сначала объявляется переменная, потом используется

Этот вопрос я уже разобрал не нужно к нему возвращаться тема и так полна хлама. Был бы доступ почистил
Цитата
проще всего объединить два запроса при помощи UNION первый с правильным ответом, и второй с 4-мя рандомными неправильными ограничив их LIMIT ' ом

Вытаскивать их придется опираясь на поле correct?
inpost
Valick
Разве? Не работает + выводятся ошибки на 23-24 строчках. В Ошибке чётко видно, что неопределённая переменная. Вывод идёт ВЫШЕ чем "Простой тест", значит строчка 23-24 находится выше HTML, я сделал предположение, что ругается как раз на отсутствие инициализации переменной.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
maruo
Цитата
Valick
Разве? Не работает + выводятся ошибки на 23-24 строчках. В Ошибке чётко видно, что неопределённая переменная. Вывод идёт ВЫШЕ чем "Простой тест", значит строчка 23-24 находится выше HTML, я сделал предположение, что ругается как раз на отсутствие инициализации переменной.


Она и до сих пор ругается , на сколько известно нотисы не страшны.
inpost
maruo
Они страшны. Вопрос тебе прямой, так почему не убрал до сих пор?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
maruo
$input = null;
$res = mysql_query($query) or die(mysql_error());
if($res){
if(mysql_num_rows($res) > 0){
while($row=mysql_fetch_assoc($res)){

$quest = $row['q_quest'];
$hidden = ' <input type="hidden" name="quest" value="'.$row['q_id'].'">'.$end_line;
$input .= '<button name="answer" value ="'.$row['a_id'].'"> '.$row['a_answer'].' </button>'.$end_line;

}
}
}

Пожалуйста устранено? Так ведь можно?

Только теперь вопрос, чем они страшны? Код ведь отработал
inpost
maruo
Вопрос был немного другой, почему ты спрашиваешь об ошибке, тебе отвечают, потом ты повторно эту же ошибку спрашиваешь и в итоге не исправляешь?

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
maruo
Цитата
maruo
Вопрос был немного другой, почему ты спрашиваешь об ошибке, тебе отвечают, потом ты повторно эту же ошибку спрашиваешь и в итоге не исправляешь?

Цитата
вопрос заключался совсем в другом

valik вам ответил же, вопрос был в другом, не в нотис ошибке
Цитата
Типичный пример Медведя, он утверждает, что прошел курс мой за неделю

Вы пишите курсы? Они платные или доступны в свободном доступе?
maruo
1 запрос есть а вот со вторым проблемы.Ошибки постоянные
"SELECT q.q_id, q.q_quest, a.a_id, a.a_answer, a.a_correct
FROM answer a
RIGHT JOIN (SELECT q_id, q_quest
FROM question
ORDER BY RAND() LIMIT 1) q USING(q_id) ORDER BY RAND() LIMIT 4"
;


Ведь как я понял при использовании UNION что в обоих запросах должны быть одинаковое кол-во полей. А у меня так не выходит .

На простом примере я еще смог объединить запросы, а на таком сложном без результатов

Подкиньте информации где есть подобные примеры
Valick
Цитата (maruo @ 21.12.2015 - 13:27)
Подкиньте информации где есть подобные примеры
Kusss
да найди в поисковике как используется UNION. Первый же пример даст тебе ответ КАК написать правильно запрос.
Тебе подсказали как решить задачу, поищи самостоятельно как это использовать.
maruo
Incorrect usage of UNION and ORDER BY
Что означает эта ошибка?

$query = "SELECT q.q_id, q.q_quest, a.a_id, a.a_answer, a.a_correct
FROM answer a
RIGHT JOIN (SELECT q_id, q_quest
FROM question
ORDER BY RAND() LIMIT 1) q USING(q_id) LIMIT 4
UNION
SELECT q.q_id, q.q_quest, a.a_id, a.a_answer, a.a_correct
FROM answer a
RIGHT JOIN (SELECT q_id, q_quest
FROM question
LIMIT 1) q USING(q_id) WHERE a_correct =1 LIMIT 4
"
;


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

А нет не так( показалось что работает(
maruo
Немного переделал теперь выводится с правильным ответом Не могу добиться рандома неправильных Ошибка у меня

$query = "SELECT q.q_id, q.q_quest, a.a_id, a.a_answer, a.a_correct
FROM answer a
RIGHT JOIN (SELECT q_id, q_quest
FROM question
LIMIT 1) q USING(q_id) WHERE a.a_correct =1
UNION
SELECT q.q_id, q.q_quest, a.a_id, a.a_answer, a.a_correct
FROM answer a
RIGHT JOIN (SELECT q_id, q_quest
FROM question
LIMIT 1) q USING(q_id) LIMIT 4
"
;
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.