Мне удалось сделать то, что я хотел, но если пользователь не соответствует первому номеру, тогда он говорит, что они не соответствуют ни одному, когда они могли бы соответствовать 5 и т.д ... Подумайте об этом как лотерея :)PHP & Mysql, Проверка того, соответствуют ли столбцы в таблице другому столбцу в другой таблице (Сложно)
<?
include "includes/db_connect.php";
$email=$_SESSION["real_name"];
$sql="SELECT * from users WHERE email='$email'";
$result=mysql_query($sql);
while($rows=mysql_fetch_array($result)){ // Start looping table row
$one2=$rows['1'];
$two2=$rows['2'];
$three2=$rows['3'];
$four2=$rows['4'];
$five2=$rows['5'];
$six2=$rows['6'];
{
$q = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$one2' OR `2` = '$one2' OR `3` = '$one2' OR `4` = '$one2' OR `5` = '$one2' OR `6` = '$one2' LIMIT 1");
$get = mysql_num_rows($q);
if($get == 0) {
echo 'Sorry you didnt match anything';
} else {
$q1 = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$two2' OR `2` = '$two2' OR `3` = '$two2' OR `4` = '$two2' OR `5` = '$two2' OR `6` = '$two2' LIMIT 1");
$get1 = mysql_num_rows($q1);
if($get1 == 0) {
echo 'You matched one number';
} else {
$q2 = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$three2' OR `2` = '$three2' OR `3` = '$three2' OR `4` = '$three2' OR `5` = '$three2' OR `6` = '$three2' LIMIT 1");
$get2 = mysql_num_rows($q2);
if($get2 == 0) {
echo 'You matched two numbers';
} else {
$q3 = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$four2' OR `2` = '$four2' OR `3` = '$four2' OR `4` = '$four2' OR `5` = '$four2' OR `6` = '$four2' LIMIT 1");
$get3 = mysql_num_rows($q3);
if($get3 == 0) {
echo 'You matched three numbers';
} else {
$q4 = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$five2' OR `2` = '$five2' OR `3` = '$five2' OR `4` = '$five2' OR `5` = '$five2' OR `6` = '$five2' LIMIT 1");
$get4 = mysql_num_rows($q4);
if($get4 == 0) {
echo 'You matched four numbers';
} else {
$q5 = mysql_query("SELECT * FROM `numbers` WHERE `1` = '$six2' OR `2` = '$six2' OR `3` = '$six2' OR `4` = '$six2' OR `5` = '$six2' OR `6` = '$six2' LIMIT 1");
$get5 = mysql_num_rows($q5);
if($get5 == 0) {
echo 'You matched five numbers';
} else {
echo 'You matched all the numbers';
}
?>
<? }}}}}}} ?>
Теперь вы увидели код, я думаю, что нужно объяснить ABIT больше. one2-six2 - 6 номеров, которые выбрал пользователь. Их нужно сопоставить с цифрами в таблице «числа» Это работает, но если пользователь не соответствует их первому числу (one2), но соответствует (two2), например, то он говорит, что они не соответствуют ни одному.
Любые советы?
1. Прекратите использование MySQL_ * его ветхий и используйте mysqli_ * 2. Завершите все после другого, если. Затем для каждого извините, замените извините, что вы не получили свой первый/второй/и т. Д. Номер, после чего он перейдет к следующему, чтобы сказать, что вы получили номер/два/три/и т. Д., Если получили правильный номер –
1. Прекратите использование MySQL_ * его ветхий и использовать mysqli_ * 2. Конец после каждого другого перед другим, если. Тогда для каждого извините, замените извините, что вы не получили свой первый/второй/и т. Д. Номер, после чего он перейдет к следующему, чтобы сказать, что вы получили номер/два/три/и т.д., если получили правильный номер. Должен идти, если ($ one2 === $ one2_query) {$ correct = $ number + 1; } else {$ wrong = $ number_wrong +1;} // конец statenents Echo 'you got'. $ number. ' Номера справа и '. $ Number_wrong.' Номер неправильный. '; –
Не могли бы вы привести пример вроде: $ q = mysql_query ("SELECT * FROM' numbers' WHERE '1' = '$ one2' ИЛИ' 2' = '$ one2' OR '3' = '$ one2' OR' 4' = '$ one2' OR '5' = '$ one2' OR' 6' = '$ one2' LIMIT 1 "); $ get = mysql_num_rows ($ q); if ($ get == 0) { echo 'Извините, что вы ничего не соответствовали'; } else {/// Первый номер соответствует, проверяет второй и т. Д. Мой код работает так, как я хочу, чтобы он работал, но если их первый номер не совпадает, а второй, он говорит, что никто не работает так, что он говорит на первом нет совпадений, нужно проверить их второй и т. д. ... Я довольно новичок в PHP, поэтому im confused – StuckonPHP