2015-09-04 2 views
-1

У меня есть этот код .. сделать register.php страницаПредупреждение: mysql_num_rows(): поставляется аргумент не является допустимым MySQL результаты ресурс

<?php include "config.php"; 
define(img, $_GET['img']); 
?> 
<!DOCTYPE HTML> 
<html dir="rtl" lang="ar"> 
    <head> 
     <meta charset="UTF-8" /> 
     <title>Marketsef - Register</title> 
     <link rel="stylesheet" href="includes/css/style.css" type="text/css" /> 
     <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css"> 
    </head> 
    <body> 
     <div class="all"> 
      <div class="register-box"> 
       <div class="register"> 
        <h3 class="title">تسجيل حساب جديد!</h3> 
        <?php 
        #======[values]======# 
        $username = $_POST['username']; 
        $email = $_POST['email']; 
        $password = $_POST['password']; 
        $stname = $_POST['stname']; 
        $lastname = $_POST['lastname']; 
        $gender = $_POST['gender']; 
        $birthday = $_POST['day']; 
        $birthmonth = $_POST['month']; 
        $birthyear = $_POST['year']; 
        $country = $_POST['country']; 
        if(isset($_POST['done'])){ 
          if(empty($username) and empty($password) and empty($email) and empty($stname) and empty($lastname) and empty($country) and empty($birthyear) and empty($birthday) and empty($birthmonth) and empty($gender)){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> انت لم تملأ جميع الحقول الموجودة!</h3> 
           <?php 
          }elseif(empty($username) or empty($password) or empty($email) or empty($stname) or empty($lastname) or empty($country) or empty($birthyear) or empty($birthday) or empty($birthmonth) or empty($gender)){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> هناك بعض الحقول فارغة، من فضلك إملأ جميع الحقول المطلوبة</h3> 
           <?php 
          }elseif(strlen($password) > 15){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i>يجب أن يكون الباسورد أقل من 15 حرف<h3> 
           <?php 
          }elseif(strlen($password) < 8){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> يجب أن يكون الباسورد أكثر من 8 حروف</h3> 
           <?php 
          }elseif($password != $_POST['password2']){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> كلمتا المرور اللتان أدخلتهما غير متطابقان</h3> 
           <?php 
          }elseif($_FILES["image1"]["error"] == 4){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> انت لم ترفع صور!</h3> 
           <?php 
          }elseif($_FILES["image1"]["error"] == 4){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> مطلوب صورتين معاً وليست صورة واحدة فقط!</h3> 
           <?php 
          }elseif(!in_array($_FILES['image1']['type'], array("image/jpeg","image/jpg","image/png"))){ 
           ?> 
           <h3 class="error"><i class="fa fa-exclamation-triangle"></i> عفواً نحن نقبل الصور بصيغة JPG أو PNG فقط!</h3> 
           <?php 
          }else{ 
           $regver = mysql_query("SELECT * FROM users WHERE u_name = ".$username." or u_email = ".$email.""); 
           if(mysql_num_rows($regver) > 0){ 
            $fetching = mysql_fetch_assoc($regver); 
            $FetchUsername = $fetching['username']; 
            $FetchEmail = $fetching['email']; 
            if($FetchUsername = $username and $FetchEmail = $email){ 
             ?> 
             <h3 class="error"><i class="fa fa-exclamation-triangle"></i> اسم المستخدم والبريد الالكتروني مستخدمان مسبقاً</h3> 
             <?php 
            }elseif($FetchUsername = $username){ 
             ?> 
             <h3 class="error"><i class="fa fa-exclamation-triangle"></i> اسم المستخدم مستخدم مسبقاً</h3> 
             <?php 
            }elseif($FetchEmail = $email){ 
             ?> 
             <h3 class="error"><i class="fa fa-exclamation-triangle"></i> البريد الالكتروني مستخدم مسبقاً</h3> 
             <?php 
            }else{ 
             $img_1_path = $_FILES['image1']['tmp_name']; 
             $img_2_path = $_FILES['iamge2']['tmp_name']; 
             move_uploaded_file($img_1_path,"./images/".$_FILES['image1']['name']); 
             $registersql = mysql_query("INSERT INTO users (u_name,u_email,u_password,u_stname,u_lastname,u_gender,u_birthday,u_birthmonth,u_birthyear,u_country) VALUES ('$username','$email','$password','$stname','$lastname','$gender','$birthday','$birthmonth','$birthyear','$country')"); 
             ?> 
             <h3 class="suc"><i class="fa fa-check"></i> تم تسجيل العضوية لدينا بنجاح!</h3> 
             <?php 
             exit; 
            } 
           }else{ 
            $img_1_path = $_FILES['image1']['tmp_name']; 
            $img_2_path = $_FILES['iamge2']['tmp_name']; 
            move_uploaded_file($img_1_path,"./images/".$_FILES['image1']['name']); 
            $registersql = mysql_query("INSERT INTO users (u_name,u_email,u_password,u_stname,u_lastname,u_gender,u_birthday,u_birthmonth,u_birthyear,u_country) VALUES ('$username','$email','$password','$stname','$lastname','$gender','$birthday','$birthmonth','$birthyear','$country')"); 
            ?> 
            <h3 class="suc"><i class="fa fa-check"></i> تم تسجيل العضوية لدينا بنجاح!</h3> 
            <?php 
            exit; 
           } 
          } 
         } 
        ?> 
        <form action="register.php" method="post" enctype="multipart/form-data"> 
         <input name="username" class="register-input" type="text" autofocus="" placeholder="اسم المستخدم" /><br /> 
         <input name="email" class="register-input" type="email" placeholder="البريد الالكتروني" /><br /> 
         <input name="password" class="register-input" type="password" placeholder="كلمة المرور" /><br /> 
         <input name="password2" class="register-input" type="password" placeholder="تأكيد كلمة المرور" /><br /> 
         <input name="stname" class="register-input" type="text" placeholder="الاسم الأول" /><br /> 
         <input name="lastname" class="register-input" type="text" placeholder="الاسم الأخير (اللقب)" /><br /> 
         <p style="font-size: 20px;text-align: center;">الجنس:</p> 
         <select name="gender" style="margin: auto;padding: 10px 0px 10px 0px;margin-bottom: 6px;font-size: 18px;width: 30%;"> 
          <option value="0"></option> 
          <option value="ذكر">ذكر</option> 
          <option value="أنثى">أنثى</option> 
         </select><br /> 
         <p style="font-size: 20px;text-align: center;">تاريخ الميلاد:</p> 
         <select name="day" style="margin: auto;padding: 10px 0px 10px 0px;margin-bottom: 6px;font-size: 18px;width: 30%;"> 
          <option value="0"></option> 
          <option value="1">1</option> 
          <option value="2">2</option> 
          <option value="3">3</option> 
          <option value="4">4</option> 
          <option value="5">5</option> 
          <option value="6">6</option> 
          <option value="7">7</option> 
          <option value="8">8</option> 
          <option value="9">9</option> 
          <option value="10">10</option> 
          <option value="11">11</option> 
          <option value="12">12</option> 
          <option value="13">13</option> 
          <option value="14">14</option> 
          <option value="15">15</option> 
          <option value="16">16</option> 
          <option value="17">17</option> 
          <option value="18">18</option> 
          <option value="19">19</option> 
          <option value="20">20</option> 
          <option value="21">21</option> 
          <option value="22">22</option> 
          <option value="23">23</option> 
          <option value="24">24</option> 
          <option value="25">25</option> 
          <option value="26">26</option> 
          <option value="27">27</option> 
          <option value="28">28</option> 
          <option value="29">29</option> 
          <option value="30">30</option> 
          <option value="31">31</option> 
         </select> 
         <select name="month" style="margin: auto;padding: 10px 0px 10px 0px;margin-bottom: 6px;font-size: 18px;width: 30%;"> 
          <option value="0"></option> 
          <option value="January">يناير</option> 
          <option value="February">فبراير</option> 
          <option value="March">مارس</option> 
          <option value="April">إبريل</option> 
          <option value="May">مايو</option> 
          <option value="June">يونيو</option> 
          <option value="July">يوليو</option> 
          <option value="August">أغسطس</option> 
          <option value="September">سمبتمر</option> 
          <option value="October">أكتوبر</option> 
          <option value="November">نوفمبر</option> 
          <option value="December">ديسمبر</option> 
         </select> 
         <input name="year" type="number" placeholder="سنة ميلادك" min="1970" max="2001" style="margin: auto;padding: 10px 0px 10px 0px;margin-bottom: 6px;font-size: 18px;width: 30%;" /><br /> 
         <input name="country" class="register-input" type="text" placeholder="الدولة والمدينة" /><br /> 
         <table border="0" width="100%"> 
          <tr> 
           <td><p style="font-size: 20px;text-align: center;">صورة : <input name="image1" type="file" /></p></td> 
           <td rowspan="2"></td> 
          </tr> 
<!--      <tr> 
           <td><p style="font-size: 20px;text-align: center;">صورة 2: <input name="image2" type="file" /></p></td> 
          </tr>--> 
         </table> 
         <input name="done" type="submit" value="تسجيل" class="donesub" /> 
        </form> 
       </div> 
      </div> 
     </div> 
    </body> 
</html> 

и скажите мне ошибку:

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\Marketsef\register.php on line 64

Я хочу, чтобы убедиться, если пользователь введите адрес электронной почты или имя пользователя в сравнении с чем-то в базе данных «пользователей» Я хочу, чтобы решить эту проблему, пожалуйста,

+0

RTM http://php.net/manual/en/function.define.php как сидней. 'define (" CONSTANT "," Hello world. ");' - и вы делаете 'define (img, $ _GET ['img']);' где 'img' технически уже обрабатывается как константа. –

+1

Одна ошибка здесь, если вы хотите, чтобы они были истинными 'if ($ FetchUsername = $ username и $ FetchEmail = $ email)' должно быть 'if ($ FetchUsername == $ username и $ FetchEmail == $ email)' затем снова здесь '} elseif ($ FetchUsername = $ username) {' и здесь '} elseif ($ FetchEmail = $ email) {' – Shehary

+0

Возможный дубликат http://stackoverflow.com/questions/11321491/when-to-use-single- цитаты-двойные кавычки и обратные ссылки –

ответ

1

Чтобы исправить эту ошибку, вы получаете:

Во-первых, не используйте mysql, то рекомендуется использовать mysqli.
Во-вторых, у вас нет определенного соединения с базой данных в вашей команде запроса, как PHP может запрашивать несуществующую базу данных?

Ваш запрос MySQL не удается (при этом не действительный ресурс MySQL), пытаясь умирающих его и видя ошибку, хотя ошибка, вероятно, фиксируется как это сделать:

$dbc = mysqli_connect(HOST, USERNAME, PASSWORD, DBNAME); //The database connection 
$regver = mysqli_query($dbc, "SELECT * FROM users WHERE u_name = '".$username."' OR u_email = '".$email."'"); 

Если он не работает, выкупите его и увидите ошибку:

$regver = mysqli_query("SELECT * FROM users WHERE u_name = '".$username."' OR u_email = '".$email."'") 
or die (mysqli_error($dbc); 
+0

У меня уже есть соединение с базой данных в первой строке:

+0

Вам нужно указать его как аргумент в 'mysqli_query', первый из которых будет точным. Правильно изменить ваш запрос –

+0

Этот ответ по большей части является правильным и касается серьезной проблемы, являющейся неправильным использованием кавычек. –

Смежные вопросы

 Смежные вопросы