login  Naam:   Wachtwoord: 
Registreer je!
 Forum

checkbox UPDATE veld

Offline DRobje - 31/05/2007 14:34
Avatar van DRobjeNieuw lid hoi,

Ik had een dropdown menu om een veld te updaten in de db. Nu wil ik eigenlijk een tabeloverzicht met een checkbox erachter die zorgt dat de aangevinkte nummers een andere status krijgen. Wie kan zien wat ik hier nu over het hoofd zie???
  1. <?php
  2. $query = "SELECT * FROM ft_form_4 WHERE status= 'open' GROUP BY IPC" ;
  3. if(!$result = mysql_query($query)){
  4. echo 'er ging wat fout bij het ophalen van de gegevens uit de database';
  5. }
  6. else{
  7.  
  8. while ($rij = mysql_fetch_array($result))
  9. {
  10.  
  11. echo "<table><tr><td>".$rij['IPC']."</td>";
  12. echo "<td><input type=\"checkbox\" name=\"status\" value=\"closed\"></td></tr></table>";
  13. }
  14. ?>
  15.  
  16. </p>
  17. <table width="213" border="0" align="center">
  18. <tr>
  19. <td width="207"><input type="submit" name="submit" value="bevestig" /></td>
  20. </tr>
  21. </table>
  22. <p>&nbsp;</p>
  23. <p>&nbsp;</p>
  24. <p><?php
  25.  
  26. if($_SERVER['REQUEST_METHOD'] == "POST"){
  27. if(isset($_POST['IPC']) != NULL){//ticketnummer aangevinkt, value meegegeven
  28. $sql="UPDATE
  29. ft_form_4
  30. SET
  31. status='closed'
  32. WHERE
  33. IPC='". $_POST['IPC']."'";
  34.  
  35.  
  36. //echo "$sql";
  37. if(!mysql_query($sql)){
  38. echo 'Er is een fout opgetreden: '.mysql_error();
  39. }
  40. else{
  41. echo 'Er zijn '.mysql_affected_rows().' rijen aangepast.';
  42. }
  43. else{
  44. echo 'Er is 1 rij aangepast.';
  45. }
  46. }
  47. }
  48. }
  49. }
  50.  
  51. ?>
  52. </p>
  53. </form>


En 'ja' er staat wel een formtag maar er staat nog wat meer boven deze code. heb ik er alleen niet bijgeplakt.

5 antwoorden

Gesponsorde links
Offline Thomas - 31/05/2007 14:50
Avatar van Thomas Moderator Wellicht is status een gereserveerd woord - gebruik backticks om deze kolomnaam in queries?
Offline DRobje - 31/05/2007 14:57
Avatar van DRobje Nieuw lid dat lijkt me onwaarschijnlijk. met een dropdown had ik het wel voor elkaar.
Offline GJ2086 - 31/05/2007 15:13 (laatste wijziging 31/05/2007 15:18)
Avatar van GJ2086 Nieuw lid Als ik het goed begrijp wil je de optie om meerdere rijen in 1 keer up te daten.

Dat zou je zo moeten aanpakken

  1. <?php
  2.  
  3. if(isset($_POST['submit']) && is_array($_POST['status'])){
  4. mysql_query("UPDATE ft_form_4 SET status='closed' WHERE IPC IN (" . implode(',', $_POST['status']) . ")");
  5. }
  6.  
  7. ?>


en de checkbox

  1. <?php
  2. echo "<td><input type=\"checkbox\" name=\"status[]\" value=\"".$rij['IPC']."\"></td></tr></table>";
  3. ?>


Volgens mij moet dit wel werken zo. Ik heb dit ff uit mn hoofd getypt duz vergeef me als het niet werkt..
als het niet werkt zal het een kwestie zijn van syntax error, duz daar zal je verder wel uitkomen denk ik.
Offline DRobje - 31/05/2007 15:19 (laatste wijziging 31/05/2007 15:42)
Avatar van DRobje Nieuw lid Nee laat maar het is al voor elkaar. Ik moest allen even de POST naam aanpassen naar 'closed' .het werkt ...

EDIT: helaas nog niet correct. ik kan namleijk niet meerder aanvinken. hij sluit er namelijk maar 1. dat is niet de bedoeling. er moet dus nog iets bij maar wat???
Offline GJ2086 - 31/05/2007 15:56 (laatste wijziging 31/05/2007 15:58)
Avatar van GJ2086 Nieuw lid Dus je wil wel meerdere checkboxen updaten?
Heb de oplossing al in mn vorige reply gepost..
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.23s