<?php
if($_POST['sender'] == "opslaan"){
if (!$_POST['contactpage'] == 1 && $_POST['contactpage'] == 2 &&
$_POST['contactpage'] == 3 && $_POST['contactgegev'] == 4 &&
$_POST['contactgegev'] == 2){ // delete Contactpage template 1
//$del_cptmpl1 = $userdb->q("DELETE FROM pages WHERE id IN('1500011','1500012')");
//$del_cptmpl2 = $userdb->q("DELETE FROM pages WHERE id IN('1000010','1000012')");
}
//dbg ($del_cptmpl1);
//dbg ($del_cptmpl12);
}
?>
Als er geen checkbox is gechecked moeten er de pages: 1500011,1500012 en 1000010 en 1000012 verwijderd worden. Ik heb deze query alleen hij werkt niet.
Die heb ik al gepost ;) op een andere pagina. en die andere pagina heb ik geinclude.
Dus daar ligt het probleem niet, als ik die dbg niet in commetaar zet ( en de delete query ook niet ) komt er NULL te staan.
Ik denk dat er dus ergens in $del_cptmpl1 een fout zit.
Ik heb hem getest in mysql en de query is niet verkeerd. hij verwijderd de rows die ik wel wil hebben. Maar nu wil ik dat als er geen checkbox is geselecteerd en er is toevallig nog een contactpage over. Dat die word verwijderd.
EDIT:
<?php
if($_POST['sender'] == "opslaan"){
if (!$_POST['contactpage'] == 1 && $_POST['contactpage'] == 2 &&
$_POST['contactpage'] == 3 && $_POST['contactgegev'] == 1 &&
$_POST['contactgegev'] == 2){
echo "Ik kom hierlangs!";
// delete Contactpage template 1
$del_cptmpl1 = $userdb->q2("DELETE FROM pages WHERE id IN('1500011','1500012')");
$del_cptmpl2 = $userdb->q2("DELETE FROM pages WHERE id IN('1000010','1000012')");
}
//dbg ($del_cptmpl1);
//dbg ($del_cptmpl2);
}
?>
als ik deze code met een echo in de if ( ik kom erlangs ), en ik voer mijn pagina uit en ik check geen radiobuttons, zie ik niks gebeuren. Ik denk dat hij dus helemaal niet langs de if komt. Dus de if is waarschijnlijk fout.
[size=xsmall]Toevoeging op 07/11/2012 09:54:58:[/size]
Ik heb de fout gevonden.
<?php
///////////////////////////////////////
// Als er geen van de contactformulieren
// of van de gegevensformulieren is
// geselecteerd moet het worden verwijderd.
//////////////////////////////////////
if($_POST['sender'] == "opslaan"){
if (!$_POST['contactpage'] == 1 && !$_POST['contactpage'] == 2 &&
!$_POST['contactpage'] == 3 && !$_POST['contactgegev'] == 1 &&
!$_POST['contactgegev'] == 2){
echo "Ik kom hierlangs!";
// delete Contactpage template 1
$del_cptmpl1 = $userdb->q2("DELETE FROM pages WHERE id IN('1500011','1500012')");
$del_cptmpl2 = $userdb->q2("DELETE FROM pages WHERE id IN('1000010','1000012')");
}
//dbg ($del_cptmpl1);
//dbg ($del_cptmpl2);
}
?>
@wouter je hebt gelijk, kwam er ook net achter dat t niet goed was. Heb nu de !$_POST weggehaald en van de == een != gemaakt.
Nu doet ie t wel helemaal:
Het resultaat:
<?php
///////////////////////////////////////
// Als er geen van de contactformulieren
// of van de gegevensformulieren is
// geselecteerd moet het worden verwijderd.
//////////////////////////////////////
if($_POST['sender'] == "opslaan"){
if ( $_POST['contactpage'] != 1 && $_POST['contactpage'] != 2 &&
$_POST['contactpage'] != 3 && $_POST['contactgegev'] != 1 &&
$_POST['contactgegev'] != 2){
echo "Ik kom hierlangs!";
// delete Contactpage template 1
$del_cptmpl1 = $userdb->q2("DELETE FROM pages WHERE id IN('1500011','1500012')");
$del_cptmpl2 = $userdb->q2("DELETE FROM pages WHERE id IN('1000010','1000012')");
// Delete dynamicmenu template 1
//$del_dymtmpl1 =
}
//dbg ($del_cptmpl1);
//dbg ($del_cptmpl2);
}
?>