誰か助けてくれませんか..ページを更新せずにフォームを投稿しようとしましたが、挿入または削除しようとしたときにのみフォームが正しく機能します。今一緒に。このサンプルは機能しますが、PHP フォームから "//" を削除すると、SQL に挿入または削除されません。誰か助けてくれませんか?
PHPのように「IF」をオフにした場合にのみ機能します
PHP
function addToFav() {
global $Itemid;
$user =& JFactory::getUser();
$db2 =& JFactory::getDBO();
$mediaid = $_POST['addMediaId'];
$delid = $_POST['delRow'];
この場所から、行から「//」を削除すると問題が発生します
//if(isset($_POST['submit2']) and $_POST['submit2'] == '1') {
$query = ' INSERT INTO `#__mediamall_favourite_media` (`id`, `userid`, `mediaid`) VALUES ("","'.$user->id.'","'.$mediaid.'")';
// }
//elseif(isset($_POST['submit2']) and $_POST['submit2'] == '0') {
//$query = ' DELETE FROM #__mediamall_favourite_media WHERE id = "'.$delid.'" ';
//}
if($query) {
$db2->setQuery($query);
$db2->query();
mosRedirect('index.php?option=com_mediamall&task=viewdetails&id='.$mediaid.'&Itemid=' . $Itemid);
}
}
形
<form action="index.php" method="post" id="myForm" onsubmit="return false">
<input type="hidden" name="option" value="com_mediamall" ></input>
<input type="hidden" name="task" value="addToFav" ></input>
<input type="hidden" name="addMediaId" value="<?php echo $media->id; ?>" ></input>
<input type="hidden" name="delRow" value="<?php echo $del->id; ?>" > </input>
<input type="submit" name="submit2" id="sub" value="<?php if($del->id) { echo '0'; } else { echo '1'; } ?>" ></input>
</form>
Jクエリ
<script>
$("#sub").click( function() {
var url=$("#myForm").attr("action");
$.post(url, $("#myForm :input").serializeArray(),function(){
var val=$("#sub").val()== 1 ? 0 : 1;// toggle value of submit for insert or delete
$("#sub").val(val);
});
});
</script>