2013-03-03 3 views
3

Привет, я новичок в PHP, я использую xampp в качестве локального хоста и html-форм для сбора данных.Обработка PHP данных формы

моя форма запрашивает миролюбивых данные, я пытаюсь заставить его поместить эти данные в клиента базы данных MySQL

Я получаю ошибку Warning: mysql_query() ожидает параметр 2 будет ресурс, данный объект в C: \ XAMPP \ HTDOCS \ service_record.php на линии 14 Ошибка:

код формы

<center> 
    <form method="post" action="service_record.php"> 
     <table border="1" cellspacing="50"> 
      <center><h1>Record Service Record</h1></center> 
      <tr> 
       <td>Date joined <input name="join_date"size="34" maxlength="30"> </td> 
       <td>Discharge date <input name="leave_date"size="34" maxlength="30"><br /></td> 
      </tr> 
      <tr> 
       <td>Rank <input name="rank"size="20" maxlength="20"> </td> 
       <td>time served <input name="time_served"size="20" maxlength="10"></td> 
      </tr> 
      <tr> 
       <td>Service <input name="service"size="34" maxlength="30"></td> 
       <td>Regt/Corps <input name="regt_corps"size="34" maxlength="30"><br /></td> 
      </tr> 
     </table> 

     <input type="reset" value="Reset Form"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input type="submit" value="Send" /> 
</center> 
    </form> 

PHP код

<?php 
    $con=mysqli_connect("localhost","client",""); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
     echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 

    $sql="INSERT INTO service_record (join_date,leave_date,rank,time_served,service,regt_corps) 
    VALUES 
    ('$_POST[join_date]','$_POST[leave_date]','$_POST[rank]','$_POST[time_served]','$_POST[service]','$_POST[regt_corps]')"; 

    if (!mysql_query($sql,$con)) 
    { 
     die('Error: ' . mysql_error()); 
    } 
    echo "The Staff Details have been added to database"; 

    mysql_close($con); 

?> 

Я прочитал книги после того, как книги изменили его в 100 раз. Я прочитал этот сайт и многие другие, я просто могу его получить.

Пожалуйста, помогите, если сможете.

Роб

+2

Ваш скрипт, похоже, уязвим для SQL-инъекции. – Gumbo

ответ

3

Вы используете mysqli_connect, но потом, вы проверяете для !mysql_query и закрыть его как mysql_close.

Итак, вы должны решить, хотите ли вы использовать mysql, или mysqli. Сначала, чтобы попробовать механизм, используйте mysql везде, он должен хорошо работать. Но тогда, пожалуйста, перепишите все на mysqli, это новее и лучше (!).

When should I use MySQLi instead of MySQL?

MySQL vs MySQLi when using PHP

Надеется, что это помогает.

+4

никогда не использовать 'mysql' – JamesHalsall

+0

Спасибо, Степо, работал в первый раз, теперь я просто меняю MySQL на mysqli – pitbull10

+0

Добро пожаловать. Да, просто измените старый mysql на новый mysqli. Если вы нашли мой ответ полезным, вы можете принять его :)) – Stepo

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