2016-08-16 41 views
1

我試圖從我的聯繫表單7中使用wordpress將數據插入到mysql中。使用wordpress從聯繫人表單7中插入數據

所以對於我創建了一個基本的聯繫表格:

<p>Your Name (required)<br /> 
[text* name:sName ] </p> 

<p>Your Email (required)<br /> 
[email* name:sEmail] </p> 

<input type="submit" name:submit> 

這是PHP函數:

<?php 
require_once('../../../wp-load.php'); 
include ('../../../wp-config.php'); 
global $wpdb;  
if(isset($_POST['submit'])) 
{ 
$name=addslashes($_POST['sName']); 
$email=addslashes($_POST['sEmail']); 
$wpdb->insert("Users",array(
"sName"=>$name, 
"sEmail"=>$email, 
)); 
}  
$wpdb->show_errors(); 
?> 

和頁面:

<form action="/wp-content/plugins/my-codes/insertUser.php" method="post"> 
[contact-form-7 id="11" title="Contact form 1"] 
</form> 

到目前爲止,我知道,該PHP函數的作品,並且我有連接到數據庫,因爲如果不使用聯繫表7我使用下面的代碼頁面(見下文),將其插入完美

<form action="/wp-content/plugins/my-codes/insertUser.php" method="post"> 
Name: <input type="text" name="sName" /> 
Email: <input type="text" name="sEmail" /> 
<input type="submit" name="submit"> 
</form> 

所以我知道這個問題是從某處的聯繫方式傳來的信息,但我不能看到什麼林做錯了。任何想法?

謝謝!

+0

你使用了正確的數據庫接口。不要使用'addslashes'它會破壞你的數據。 – tadman

+0

即時通訊使用latin1_swedish_ci,多數民衆贊成嗎? – AlguienEnEsteMundo

+0

你真的應該使用UTF-8,但那不重要。 'addslashes'在您的數據中插入斜線,所以像O'Reilly這樣的名字變成''O \''Reilly'''。這是一個不好的習慣。 – tadman

回答

1

這是做它的正確方法:

<p>Your Name (required)<br /> </p> 
[text* sName id:sName] 

<p>Your Email (required)<br /></p> 
[email* sEmail id:sEmail] 

<input type="submit" name="submit"> 
相關問題