Jeg er igang med et postsystem, og i dette er der mulighed for at flytte beskederne til en mappe man selv har oprettet.
Det jeg mangler nu er at jeg skal sætte checkboxe ud for hver besked, også ved de checkboxe der er krydset af, skal de beskeder flyttes ind til en mappe.
Måden de bliver 'flyttet' på er ved at opdatere et felt i tabellen der hedder "mappeNavn".
Hvad er det du spørger til? Hvordan man opdatere databasen? Eller hvordan man laver checkboxene? Eller hvordan man behandler de data der kommer fra checkboxene?
Altså jeg ved godt at en checkbox er <input type="chechbox">
Men hvordan jeg gør sådan at hvis flere checkboxe er krydset af (Der kommer en ud for hver postbesked), så bliver alle der der er krydset af smidt over i den valgte mappe:
[ ] Postnavn Afsender Modtager d. [ ] Postnavn Afsender Modtager d. [ ] Postnavn Afsender Modtager d.
[Scroll down med ens oprettede mapper] [*knap* Flyt valgte til mappe]
foreach($_POST['check'] AS $check) { mysql_query("UPDATE postCenter SET mappeNavn='$_POST[mappeNavn]' WHERE id='$_POST[check]'") or die("Fejl: " . mysql_error()); } right? :))
Her er der hvor postbeskederne udskrives: <?php $sql = mysql_query("SELECT * FROM postCenter WHERE modtager='$_SESSION[brugernavn]' AND modtagerSlet='nej' ORDER BY id DESC") or die("Fejl: " . mysql_error()); while($post = mysql_fetch_assoc($sql)){ if($post[status] == "ikkeSet"){ $tyk = "<b>"; }else{ $tyk = ""; } ?> <form method="POST" action="?p=post&action=flytPost"> <tr> <td width="20"><input type="checkbox" name="check[<?=$post[id]?>]"> <td width="133"><?=$tyk?><a href="?p=post&action=readPost&id=<?=$post[id]?>"><?=afkort($post[emne], 20);?></a></td> <td width="133" align="center"><?=$tyk?><a href="?p=post&action=readPost&id=<?=$post[id]?>"><?=$post[dato]?></a></td> <td width="133" align="center"><?=$tyk?><a href="?p=profil&bruger=<?=$post[afsender]?>"><?=$post[afsender]?></a></td> <td width="133" align="right"><?=$tyk?><a href="?p=post&action=sendPost&id=<?=$post[id]?>">Besvar</a>, <a href="?p=post&action=gem&id=<?=$post[id]?>">gem</a>, <a href="?p=post&action=sletInd&id=<?=$post[id]?>">slet</a></td> </tr> <?php } ?> <tr> <td colspan="5"> </td> </tr> <tr> <td colspan="5"> <select name="flytMappe"> <?php $sql = mysql_query("SELECT * FROM postCenterMapper WHERE mappeEjer='$_SESSION[brugernavn]'") or die("Fejl: " . mysql_error()); while($flytMappe = mysql_fetch_assoc($sql)){ ?> <option value="<?=$flytmappe[mappeNavn]?>"><?=$flytMappe[mappeNavn]?></option> <?php } ?> </select> <input type="submit" value="Flyt beskeder" style="width:150px"> </form> </td> </tr>
******************************************* Og her er der hvor de skulle blive flyttet: if($_GET[action] == "flytPost"){ if($_POST[check] != ""){ mysql_query("UPDATE postCenter SET mappeNavn='$_POST[flytMappe]' WHERE id='$_POST[id]'") or die("Fejl: " . mysql_error()); print "<script>document.location.href='?p=post'</script>"; }else{ print "Du skal vælge postbeskeder først :)"; } }
Har prøvet at ændre til det her: if($_GET[action] == "flytPost"){ if($_POST[check] != ""){ foreach($_POST['check'] AS $check) { mysql_query("UPDATE postCenter SET mappeNavn='$_POST[flytMappe]' WHERE id='$_POST[check]'") or die("Fejl: " . mysql_error()); print "<script>document.location.href='?p=post'</script>"; }}else{ print "Du skal vælge postbeskeder først :)"; } }
Men den kommer med denne fejl: Warning: Invalid argument supplied for foreach() in /mounted-storage/home86c/sub006/sc46641-PMQM/www/community/bruger/post.php on line 72
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.