login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Probleem met volgorde

Offline tomie94 - 16/12/2007 13:41
Avatar van tomie94PHP interesse Hallo ik ben bezig met een menu in MySQL nu doet alles het maar er is een probleem: Het staat op een volgorde die ik niet wil. Nu wil ik bij de admin dus 2 knoppen naast de titel van het menu... een met omhoog in het rijtje en de 2e omlaag in het rijtje. Mijn probleem is nu hoe moet ik dit doen?

13 antwoorden

Gesponsorde links
Offline Bart - 16/12/2007 13:45
Avatar van Bart PHP expert Geef de kopjes een id nummer. Als er op het knopje omhoog wordt geklikt verander je het id van dat kopje -1. En de rest met idnummers groter dan het kopje +1.
En met omlaag precies hetzelfde alleen dan omgedraaid.
Offline tomie94 - 16/12/2007 13:51
Avatar van tomie94 PHP interesse ja dat dacht ik ook al. maar ik kan er bijv. maar 2 links in hebben staan maar mischien ook wel 500. hoe doe ik dat dan?
Offline Bart - 16/12/2007 13:53
Avatar van Bart PHP expert maak een tabel menu's
velden:
menu_id
inhoud_menu <-- hier kan je dan de inhoud van je menu in planten met links
Offline tomie94 - 16/12/2007 13:54 (laatste wijziging 16/12/2007 17:40)
Avatar van tomie94 PHP interesse ik zal het even proberen.

Edit:

Als ik dit uitvoer krijg ik een error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '://nu.nl WHERE id=2' at line 1.


  1. <?php
  2. include '../top.php';
  3. ?>
  4. <div class="content">
  5. <p>
  6. <?php
  7. if($_GET['action'] == 'edit') {
  8. if(isset($_POST['edit'])) {
  9.  
  10. $query = "UPDATE menu SET naam = ".addslashes($_POST['naam']).", url = ".addslashes($_POST['url'])." WHERE id=".$_GET['id'];
  11. mysql_query($query) or die (mysql_error());
  12. echo 'Aanpassen is voltooid!<br /><br />';
  13.  
  14. }else{
  15. $qmenu2 = mysql_query("SELECT * FROM menu WHERE id = ".$_GET['id']);
  16. $menu2 = mysql_fetch_array($qmenu2);
  17. echo '<form action="menu.php?action=edit&id='.$_GET["id"].'" method="post">';
  18. echo '<fieldset>';
  19. echo '<input type="text" name="naam" value="'.$menu2["naam"].'" /><br />';
  20. echo '<input type="text" name="url" value="'.$menu2["url"].'" /><br />';
  21. echo '<input type="submit" name="edit" value="Edit!" /><br />';
  22. echo '</fieldset>';
  23. echo '</form>';
  24. }
  25. }
  26. if($_GET['action'] == 'delete') {
  27.  
  28. $query="DELETE FROM menu WHERE id=".$_GET['id'];
  29. mysql_query($query) or die(mysql_error());
  30. echo 'Het item is verwijderd!<br /><br />';
  31. }
  32.  
  33.  
  34.  
  35. $qmenu = mysql_query("SELECT * FROM menu ORDER BY id ASC");
  36. while($menu = mysql_fetch_array($qmenu)) {
  37. echo '<a href="'.$menu["url"].'">'.$menu["naam"].'</a> | <a href="menu.php?action=edit&id='.$menu["id"].'">[Edit]</a> | <a href="menu.php?action=delete&id='.$menu["id"].'">[Delete]</a> | <a href="menu.php?action=up&id='.$menu["id"].'">[Up]</a> | <a href="menu.php?action=down&id='.$menu["id"].'">[Down]</a><br />';
  38. }
  39. ?>
  40. </p>
  41. </div>
Offline Ibrahim - 16/12/2007 18:05
Avatar van Ibrahim PHP expert http://www.site...mp;id=1259

Deze script heb ik een tijdje terug geschreven om volgordes aan te passen.
Offline tomie94 - 16/12/2007 18:18 (laatste wijziging 17/12/2007 16:40)
Avatar van tomie94 PHP interesse Bedankt dit plak ik er wel in.

Maar,
weet je mischien anders ook het antwoord op de vraag hierboven

Offline Vincjenzo - 17/12/2007 16:50
Avatar van Vincjenzo Nieuw lid Stel dat iemand dus een link toevoegd: http://nu.nl
  1. $query = "UPDATE menu SET naam = ".addslashes($_POST['naam']).", url = ".addslashes($_POST['url'])." WHERE id=".$_GET['id'];


Volgens mij staat er dan:
UPDATE menu SET naam = iemand, url = http:////nu.nl WHERE id=1

En dit zou moeten zijn:
UPDATE menu SET naam = 'iemand', url = 'http://nu.nl' WHERE id=1

Heb het niet getest..

Offline tomie94 - 17/12/2007 17:21 (laatste wijziging 17/12/2007 19:08)
Avatar van tomie94 PHP interesse nee, jammer genoeg werkt dit ook niet, krijg de zelfde error.
Offline Vincjenzo - 18/12/2007 09:45 (laatste wijziging 18/12/2007 09:46)
Avatar van Vincjenzo Nieuw lid Ja je zal natuurlijk nog wel die query moeten aanpassen. Ik kan het natuurlijk voorkauwen.

  1. $query = "UPDATE menu SET naam = '".$_POST['naam']."', url = '".$_POST['url']."' WHERE id='".$_GET['id'].'";
Offline tomie94 - 18/12/2007 14:19
Avatar van tomie94 PHP interesse als ik jouw script uitvoer krijg ik alleen een blanco pagina niet goed dus...

maar ik heb inplaats van die formuliervelden wat anders geprobeerd maar dat helpt niet....

  1. mysql_query("UPDATE menu SET naam = ".mysql_real_escape_string('blaat').", url = ".mysql_real_escape_string('blaat')." WHERE id = ".mysql_real_escape_string('2')."") or die (mysql_error());
Offline Bart - 18/12/2007 14:26
Avatar van Bart PHP expert Let op: integers hoeven niet tussen quotes. ('' en "")
Daarentegen is het wel handig om je vars tussen '".$vMijnvar."' enkele quotes te zetten.
  1. mysql_query("UPDATE menu SET naam = '".mysql_real_escape_string('blaat')."', url = '".mysql_real_escape_string('blaat')."' WHERE id = '".mysql_real_escape_string(2)."'") or die (mysql_error());
Offline tomie94 - 18/12/2007 14:46
Avatar van tomie94 PHP interesse oke nu maak ik er een insert van:

  1. mysql_query("INSERT INTO menu (naam,url) VALUES '".$naam."', '".$url."'") or die (mysql_error());


alleen nu krijg ik You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''INVOER', INVOER'' at line 1 waarbij INVOER het ingevoerde in de formuliervelden is...
Offline Ibrahim - 18/12/2007 14:49
Avatar van Ibrahim PHP expert bekijk eens je query en bekijk de standaard INSERT query, je moet nog haakjes vooraan en achteraan de values zetten
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.297s