0
希望有人可以指出我在這個正確的方向,因爲我無法得到這個工作。 這是發生了什麼: 我的客戶端上傳一個(Rightmove).blm文件到服務器,腳本解壓zip文件並使用解析器獲取屬性到一個數組..從這裏我能夠INSERT到數據庫中沒有問題然而,我需要這個更新數據庫中的信息,如果存在,否則插入blm文件可能包含新屬性或現有的編輯。 blm文件只包含屬性信息,沒有id等,所以一旦插入數據庫我給它一個id(propid)通過自動incriment手段。插入到其他更新從陣列
請查看下面的代碼,希望你可以有,我可以用它來得到這個做什麼,我需要做的:)
foreach ($rmdata as $key => $properties) {
$fields = array();
$values = array();
foreach ($rmdata[$key] as $field=>$value) {
if (!isset($value)) {
}
if (isset($value)) {
$sql_props = mysql_query("SELECT propid FROM epsales");
while($row = mysql_fetch_array($sql_props)){
$propid = $row["propid"];
}
$fields[] = $field;
$values[] = "'".$value."'";
$array1 = array($field);
$array2 = array($value);
$sqlupdate = array_combine($array1, $array2);
foreach ($sqlupdate as $field=>$value) {
$sql_update = "$field='$value', ";
}
}
}
$sql_fields = implode(', ', $fields);
$sql_values = implode(', ', $values);
$sqlPropInsert = mysql_query('INSERT INTO epsales ('. $sql_fields .') VALUES ('. $sql_values .') ON DUPLICATE KEY UPDATE SET '. $sql_update .'');
謝謝您的時間它大大appriciated的建議!
嗨,謝謝你的回覆..有一個小遊戲,它不工作,但我會更深入地研究它升技,讓你知道,非常感謝您的時間謝謝!孩子們整理,然後我會回來:) – Steve 2012-07-16 06:49:49
插入你的代碼,我已經玩了一切,仍然沒有喜悅:(不知道如果theres我錯過了,我不知道爲什麼這個贏't work .. – Steve 2012-07-16 09:06:00
如果不知道更多關於'$ rmdata'和你的數據庫模式的性質,很難說,你是否迴應了這些查詢,看看它們是否是你期望的?它以什麼方式不是工作(甚至不編譯/插入和從不更新/等)? – 2012-07-16 13:24:19