2014-01-08 38 views
-1

請我想要一個select count語句來檢索表格行中的值,並使用php對另一個表格行進行驗證。 含義使用select count來驗證兩個表之間的值

你好夥計/大師 請問我有一個問題,是幾個月到PHP,我需要你的幫助/援助。 這是流程。一個客戶在另一個網站註冊,當我們確認註冊後,我們給他們發一個代碼。 代碼被生成並保存在另一個名爲code和column generated_code的表名中。

我開發一個表單(http://cash2money2020.com/form.html) 所以,我要的是,如果有人輸入我們發送給它們生成的代碼,並在製作填充它,它使一個數據庫檢查,看看是否在其他表中存在的代碼,如果是,提交form..if不,錯誤消息的代碼是無效的,形式就不會被提交:

$query = "INSERT INTO registration 
       (id, fname, lname, address1, address2, city, state, country, email, phone, home_phone, dob, gender, living, qualification, mental, mental_details, criminal, criminal_details, kin_name, kin_phone, kin_relationship, tv_appearance, work_financial, tv_station, why, interesting, impressive, generated_code, submitted_date) 
       VALUES 
       ('', '$fname', '$lname', '$address1', '$address2', '$city', '$state', '$country', '$email', '$phone', '$home_phone', '$dob', '$gender', '$living', '$qualification', '$mental', '$mental_detail', '$criminal', '$criminal_details', '$kin_name', '$kin_phone', '$kin_relationship', '$tv_appearance', '$work_financial', '$tv_station', '$why', '$interesting', '$impressive', '$code', now()) "; 

這是我迄今爲止

$result = mysqli_query("select count(generated) from code "); 

if (!$result) echo mysqli_error(); 

$row = mysqli_fetch_row($result); 

$query = "INSERT INTO registration (generated_code) VALUES ('$code')"; 

if ($query != $row) { 
     //code to submit and process the form 
} 
else 
{ 
     //error message 
} 

請幫忙完成被困住了!

+1

從我的角度來看,即使是這樣的的僞代碼並不反映上述要求。在對數據庫執行任何插入操作之前,您是否需要檢查給定的代碼是否是首先生成的代碼?爲什麼你要比較插入語句字符串與代碼?只要用戶沒有將該插入內容輸入爲「代碼」...,這總是假的? –

+0

謝謝@AxelAmthor,正是我需要的。檢查給定的代碼是否是生成的代碼,如果有效的話,提交給d數據庫..所以可以做什麼?任何幫助將很樂意欣賞! –

+0

問:每個用戶是否有代碼,或者只有「某些」代碼需要存在? –

回答

0

這樣的事情應該(根據最後的評論)做:

$link = mysqli_connect("my_host", "my_user", "my_password", "my_db"); 

$result = mysqli_query($link, "select * from code where generated = '$code'"); 

if (!$result) die("mysql error: " . mysqli_error()); 

$row = mysqli_fetch_row($result); 


if ($row !== false) { 
     // code to submit and process the form 
     // you might use the result with $row[<fieldname>] 
} 
else 
{ 
     // error message 
} 

您需要添加一些錯誤處理和轉義值(如$code

+0

哇,驚人的寫法@Axel Amthor ...將毫無疑問地嘗試這一點儘快...謝謝! –

+0

...和upvote? –

+0

我沒有多達15的聲望@Axel Amthor ..我可以提高我的聲譽?我認爲它適合給你一個投票..說真的! :) –

相關問題