2013-03-14 72 views
1

我要更新特定行的表需要在我的PHP語句一些建議更新SQL表

我用這個語句來調用客戶端的信息

<?php 
$host="localhost"; // Host name 
$username="****"; // Mysql username 
$password="****"; // Mysql password 
$db_name="****"; // Database name 
$tbl_name="members"; // Table name 

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// get value of id that sent from address bar 
$id=$_GET['id']; 

// Retrieve data from database 
$sql="SELECT * FROM $tbl_name WHERE member_msisdn='$query'"; 
$result=mysql_query($sql); 
$rows=mysql_fetch_array($result); 
?> 

這工作得很好呼應的信息我需要並能夠改變它。

<form name="form1" method="post" action="control_clientupdated.php"> 

這referes到我的行動的PHP腳本

的問題,我需要幫助的是如何做我通知我的動作腳本使用我跑更新該行的查詢相同的ID。

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// update data in mysql database 
$sql="UPDATE $tbl_name SET member_name='$member_name',  
member_surname='$member_surname', member_msisdn='$member_msisdn', cid='$cid',  
cofficenr='$cofficenr', cfax='$cfax', e2mobile='$e2mobile' WHERE member_msisdn='$query'"; 
$result=mysql_query($sql); 

我已經把在更新

讓我說出它顯示了做的最後的WHERE語句,但它並沒有在所有

+1

剛在隱藏字段中傳遞'$ id'的值。 – Rikesh 2013-03-14 13:13:35

+0

是你的「control_clientupdated.php」腳本的第二部分? – 2013-03-14 13:15:12

+0

取決於你在哪裏存儲id(在表單中的某處?),但是像$ _POST ['id']; – 2013-03-14 13:15:18

回答

1

更新表首先,你需要存儲您的ID轉換爲表單中的隱藏表單元素。

<form method="post" action="control_clientupdated.php"> 
    <input type="hidden" name="member_msisdn" value="<?=$query?>" /> 
    ... 
</form> 

這將允許您通過您的第一個php腳本中的值。

然後在您的control_clientupdated.php中,您需要使用$_POST來恢復您的價值。

// Store the $_POST value for my query ID 
$query = $_POST['member_msisdn'] ; 

// Connect to server and select database. 
mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB"); 

// update data in mysql database 
$sql="UPDATE $tbl_name SET member_name='$member_name',  
member_surname='$member_surname', member_msisdn='$member_msisdn', cid='$cid',  
cofficenr='$cofficenr', cfax='$cfax', e2mobile='$e2mobile' WHERE member_msisdn='$query'"; 
$result=mysql_query($sql); 

這應該是你所需要的 - 請注意,您不能使用$_GET來檢索的形式傳遞的變量,因爲你與method="post"屬性來發送它,你必須使用$_POST代替$_GET

+1

謝謝藍色它運作良好,需要調整一些東西,但工作 – 2013-03-14 13:37:50

+0

好知道:)不要忘記upvote它,如果它的工作。 – 2013-03-14 13:38:28