簡體   English   中英

PHP SQL UPDATE在FF和CHROME中有效,但在IE中不起作用?

[英]PHP SQL UPDATE works in FF and CHROME but not in IE?

下面的代碼在FF和CHROME中完美運行,但在IE中則不行。 請幫忙。 我已經注釋掉了我的santize函數,因為我認為它們可能會影響它,但是它仍然可以實現同樣的功能。 提前感謝您的任何幫助。

<?php 

//IF UPDATE BUCKET CHANGE STATUS...
if(isset($_POST['updatebucket'])){


 $complete = $_POST["complete"];
 $bucketid = $_POST["bucketid"];

//$complete = sanitizeone($_POST["complete"], "plain");
//$complete = strip_word_html($complete);
//$bucketid = sanitizeone($_POST["bucketid"], "plain");
//$bucketid = strip_word_html($bucketid);

if ($complete=="1")
  $complete = "0";
else
  $complete = "1";

$updatebucket = "UPDATE membersbuckets SET complete = '$complete' WHERE userid = '$userid' AND bucketid = '$bucketid'"; 
mysql_query($updatebucket);
}
?>

和前端...。

<? if ($complete=="1") {
    echo "<form action='' method='post' name='updatebucket'><input name='complete' type='hidden' value=" .$complete. " /><input name='userid' type='hidden' value=" .$userid. " /><input name='bucketid' type='hidden' value=" .$bucketid. " /><input type='image' name='updatebucket' value='updatebucket' src='images/tick.png' /></form>";
    }else{
    echo "<form action='' method='post' name='updatebucket'><input name='complete' type='hidden' value=" .$complete. " /><input name='userid' type='hidden' value=" .$userid. " /><input name='bucketid' type='hidden' value=" .$bucketid. " /><input type='image' name='updatebucket' value='updatebucket' src='images/cross.png' /></form>";  
}
?>

您應該發布前端,而不是后端(因為它與瀏覽器無關)。

您的HTML可能無效。

編輯:

是的,IE對於輸入的圖像類型沒有價值。 它僅發送x&y(field_name_x,field_name_y),並且完全丟棄原始的“ value”屬性。

請嘗試使用隱藏的輸入。

從IE使用時, input type='image'似乎不發送該值。 您將需要另一個隱藏字段:

<input type='hidden' name='updatebucket' value='updatebucket' />
<input type='image' src='images/tick.png' />

這樣,無論使用什么瀏覽器,都會將updatebucket參數發布到服務器。

這里的假設是,所有瀏覽器都以相同的方式處理HTML表單(並且它們不這樣做); 這就是為什么我會保留Eric Lawrence出色的Fiddler的原因-它可以區分兩個HTTP請求,因此您會立即看到瀏覽器之間的區別。

另一種方法是檢查$_POST[{image-element-name}_x}] (在本例中$_POST['updatebucket_x'] 。所有瀏覽器都將圖像元素的x / y坐標作為updatebucket.xupdatebucket.y ,和PHP默默的(和令人沮喪的)改變updatebucket.xupdatebucket_x 。再說,你只需要這一下不同的輸入類型=提交/類型=圖像元素會改變所采取的行動,否則的以前的解決方案如先前建議的隱藏元素可以。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM