我需要從mem_count等於2的表中獲取數據,然後在最後一個unique_id之後將該數據插入到另一個表中。如何顯示一個表中的數據,然後將該數據插入到php中的另一個表?
這裏是我的代碼:
$mem_count2=mysql_query("SELECT mem_count,mem_id FROM member_status WHERE mem_count = 2 order by mem_id ASC");
if(mysql_num_rows($mem_count2)==0){
die(mysql_error());
}
else{
$start_value=00;
// $start_value dynamically comes from other table which i am not mentioning here
// $start_value can starts from any number For Eg. 2, 5.
while ($row=mysql_fetch_array($mem_count2)) {
$uniq_code="PHR-" . str_pad((int) $start_value, 2, "0", STR_PAD_LEFT);
//if mem_id already inserted then use IGNORE in INSERT i.e INSERT IGNORE
$cql = "INSERT IGNORE INTO member_code (mem_id, temp_code,unique_code) values ('".$row['mem_id']."','".$row['mem_count']."','".$uniq_code."')";
mysql_query($cql) or exit(mysql_error());
$start_value++;
}
}
它運行平穩,但有時我得到這個輸出:
+------------+-------------+
| mem_id | unique_code |
+------------+-------------+
| 1 | PHR-01 |
+------------+-------------+
| 5 | PHR-02 |
+------------+-------------+
| 3 | PHR-04 |
+------------+-------------+
有些問題肯定是在INSERT忽略查詢我已經mem_id爲UNIQUE 。請糾正這一點,因爲我完全陷入了它!
Member_code結構
+------------+-------------+-----+
| mem_id | unique_code | Id |
+------------+-------------+-----+
| 1 | PHR-01 | 1 |
+------------+-------------+-----+
| 5 | PHR-02 | 5 |
+------------+-------------+-----+
| 3 | PHR-04 | 3 |
+------------+-------------+-----+
警告,mysql_ *函數已被棄用。繼續使用PDO。 – Quantastical
我知道這一點,但現在我只想使用它! –
這很好。只是爲其他訪問者指出來,所以他們知道不要使用你的邏輯,一旦這些功能從未來版本的PHP中刪除,這些邏輯就會中斷。 – Quantastical