Хорошо, вот мой код. То, что он должен сделать, это получить референт, который отправил вас на страницу, пользователь будет вводить имя someurl.com/refcreate.php?ref=username
<?php session_start(); $referer = $_GET['ref']; $_SESSION['referer'] = $referer; if (!isset($referer)) { echo 'You did not specify a referer, please correct this to continue'; die; } elseif($referer == "") { echo 'You did not specify a referer, please correct this to continue'; die; }
Вышеприведенная часть отлично работает, если они забыли указать референта. Нижняя половина – это проверка того, является ли текущий референт актуальным пользователем в базе данных.
if(refcheck($referer) = false) { echo 'that referer is not in our database,please double chek the spelling and try again.'; die; } function refcheck($ref) { require('mysql_con.php'); $query="SELECT username FROM jos_users WHERE username='". $ref ."'"; echo $query; $result = mysql_query($query, $con); $exists =mysql_fetch_assoc($result); if ($exists != false) { //return true; echo 'true'; return true; } require('mysql_close.php'); } ?>
Хорошо, я понял проблему (или проблемы скорее). 1 нужно было выглядеть так, if(refcheck($referer) == false){}
вместо if(refcheck($referer) = false);
, Таким образом, это был недостающий знак равенства и неуместный двоеточие: P спасибо, ребята
Вы назначаете переменную и не сравниваете ее
Эта refcheck($referer) = false
Должен быть refcheck($referer) == false
Кроме того, ваш метод должен иметь возврат по умолчанию, если ваше условие IF не работает.
нормально, я понял, что проблема или проблемы, скорее, это было нужно, чтобы это выглядело, если (refcheck ($ referer) == false) {} вместо if (refcheck ($ referer) = false); поэтому отсутствующий знак равенства и неуместный двоеточие: P спасибо, ребята
вы ошибочно набрали «чек» в третьей строке