2017-06-15 10 views
0

私はPHPとMySQLを教えていますが、今はMySQLに問題があります。ユーザPHPの入力をMySQLに入力する方法

ユーザーが入力した電話番号とMYSQLの電話番号を比較し、MYSQLに登録していない場合は、再度登録します。

マイコード:

<?php 

require_once 'connection/connection.php'; 

// Variables from HTML to php 
$worker_Name = $_POST['workerNameFromHtml']; // worker Name 
$worker_City = $_POST['workerCityFromHtml']; // workerCity 
$worker_career = $_POST['workerCareerFromHtml']; // worker career 
$worker_PhoneNumber = $_POST['workerPhonNumberFromHtml']; // worker Phone Number 
$worker_SecondPhoneNumber = $_POST['workerSecondPhoneNumberFromHtml']; // worker Second Phone Number 
$submt=$_POST['submitFromHtml']; 

if($submt){ 

    $qry = ("SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '$worker_PhoneNumber'") or die(mysql_error()); 
    $result = $connect->query($qry); 
    $num = $result->num_rows; 

    if ($num == 1) { 
    $here = "INSERT INTO workersTable VALUES('','$worker_Name','$worker_City','$worker_career','$worker_PhoneNumber','$worker_SecondPhoneNumber')"; 
    $query = $connect->query($here); 
    print "Successfully added!"; 
    } 
    else {print "This number has already been entered Thank you for your cooperation!";}} 

$connect->close(); 

これまでのところ、私はこの問題の解決策を見つけていません。

+0

あなたの '$ qry'変数が間違っています。このチュートリアルを確認してくださいhttps://www.w3schools.com/php/php_mysql_select.asp –

+0

私は間違って変更されました。動作しません。 質問を最終ファイルに変更して編集します。 – hasan

答えて

0

ここで最大の問題は、文字列の中に変数を含めることです。

"SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '$worker_PhoneNumber'" 

このようにしたい場合は、変数を文字列に連結する必要があります。

"SELECT workrPhoneNumber FROM workersTable WHERE workrPhoneNumber = '".$worker_PhoneNumber."'" 

これを行うと、まずSQLインジェクションを防ぐために変数をサニタイズする必要があります。また、あなたは変数を挿入すると、あなたが実際にこのようなプリペアドステートメントを使用したいと思うでしょう:

値の第一セットは、データベースおよび第二セットであなたの列の名前です
"INSERT INTO table_name (column1, column2, column3,...) VALUES (value1, value2, value3,...)" 

は、PHPの変数を使用していますそれに入れている。

+0

それは仕事です、ありがとう! – hasan

関連する問題