login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Tutorial voor UPDATE formulier?

Offline jelleruben - 11/02/2007 17:39 (laatste wijziging 12/02/2007 15:57)
Avatar van jellerubenNieuw lid Hallo allemaal,

Ik ben een beginnende met PHP/SQL

Ik heb nu een invoerformulier en een resultaten lijst.
Maar zou graag ook een UPDATE formulier willen hebben.

Ik heb op het forum en Tutorials gezocht, maar kon het helaas niet vinden.

Mijn vraag is: kan iemand mij op weg helpen hoe ik zo iets moet bouwen?

Met vriendelijke groeten,

Jelle Ruben

19 antwoorden

Gesponsorde links
Offline Clemens32 - 11/02/2007 17:50 (laatste wijziging 11/02/2007 17:52)
Avatar van Clemens32 PHP interesse waarom begin je niet met iets simpelers.
Lees eerst eens iets over de basis van php.

updaten doe je zo:

  1. <?php
  2. if ($_SERVER['REQUEST_METHOD'] == 'POST') {
  3.  
  4. $sql = mysql_query("UPDATE tabel SET kolom = waarde") or die (mysql_error());
  5.  
  6. } else {
  7.  
  8. // hier je html formulier
  9.  
  10. }
  11. ?>
Offline Rens - 11/02/2007 17:58 (laatste wijziging 11/02/2007 17:59)
Avatar van Rens Gouden medaille

Crew algemeen
Toch niet helemaal goed gekeken dus...
SQL gedeelte

PHP gedeelte
Offline Godlord - 11/02/2007 18:08 (laatste wijziging 11/02/2007 18:09)
Avatar van Godlord PHP gevorderde Clemens 32 dat is niet helemaal correct.
  1. <?php
  2. mysql_connect("jehost", "jeusername", "jewachtwoord");
  3. mysql_select_db("jedatabase");
  4.  
  5. if (isset($_POST['denaamvanjeknop']) {
  6.  
  7. $query = "UPDATE jetabel SET jekolom = jewaarde"
  8. mysql_query($query) or die (mysql_error());
  9.  
  10. } else {
  11.  
  12. // hier je html formulier
  13.  
  14. }
  15. ?>
Offline Rens - 11/02/2007 18:10
Avatar van Rens Gouden medaille

Crew algemeen
  1. if (isset($_POST['denaamvanjeknop']) {

Gebruik wat clemens32 doet:
  1. if($_SERVER['REQUEST_METHOD'] == "post") {

Bestaat niet voor niks hé.
Offline Godlord - 11/02/2007 18:11
Avatar van Godlord PHP gevorderde Waar voor dient dat dan? Ik heb het niet eerder gezien noch gebruikt.
Offline Rens - 11/02/2007 18:16
Avatar van Rens Gouden medaille

Crew algemeen
http://nl3.php....les.server
Citaat:
'REQUEST_METHOD'

Which request method was used to access the page; i.e. 'GET', 'HEAD', 'POST', 'PUT'.


Bevat dus met welke manier de pagina opgeroepen is.
Vaak met een formulier (niet altijd dus) POST.
Offline Godlord - 11/02/2007 18:17
Avatar van Godlord PHP gevorderde Nouja isset werkt ook wel .
Offline jelleruben - 11/02/2007 18:18
Avatar van jelleruben Nieuw lid @Rens Sorry heb ik over het hoofd gezien...

En verder bedankt voor de informatie, ik zal eens wat gaan proberen.
Offline riekele - 11/02/2007 18:24 (laatste wijziging 11/02/2007 18:25)
Avatar van riekele PHP beginner
Citaat:
Nouja isset werkt ook wel .


het werkt misschien wel, maar beter is het niet. Daarnaast doet je formulier het (geloof ik) alleen maar met request_method = post als je op enter drukt i.p.v. op de knop klikt.
Offline Rens - 11/02/2007 18:26
Avatar van Rens Gouden medaille

Crew algemeen
Nog nooit problemen mee gehad...
Gebruik al heel lang $_SERVER['REQUEST_METHOD'], en het heeft altijd nog gewoon gewerkt hoor.
Offline riekele - 11/02/2007 18:27 (laatste wijziging 11/02/2007 18:29)
Avatar van riekele PHP beginner ik zeg ook dat het daar alleen maar mee werkt ;)

Citaat:
Rens edit:
Will you excuse me? 
Offline Ultimatum - 11/02/2007 19:02
Avatar van Ultimatum PHP expert Er zit nog een fout in:

$sql = mysql_query("UPDATE tabel SET kolom = waarde") or die (mysql_error());

String moeten binnen quotes

$sql = mysql_query("UPDATE tabel SET kolom = 'waarde'") or die (mysql_error());
Offline jelleruben - 11/02/2007 19:26 (laatste wijziging 11/02/2007 19:38)
Avatar van jelleruben Nieuw lid Allemaal leuk al die source (ben jullie ook dankbaar voor, maar door zoveel begin even door de bomen het bos niet meer te zien. 
(ben nog niet in zo'n statium dat ik dat allemaal begrijp.

Ik wou voorbeeldje van een update formulier, zodat ik het sneller kan begrijpen.

Maar ik heb nu inderdaad de UPDATE functie bekeken, alleen ja om daar aab een formulier te koppelen, snap ik nog niet echt.

Mijn Update source is

  1. <?php
  2. mysql_connect("localhost", ".....", ".......");
  3. mysql_select_db("adres");
  4. $query = "UPDATE adres SET naam='René' WHERE id=2";
  5. mysql_query($query) or die (mysql_error());
  6. ?>


Alleen nu een formulier.
Offline Voldemort - 11/02/2007 19:38 (laatste wijziging 11/02/2007 19:40)
Avatar van Voldemort PHP ver gevorderde
  1. <?php
  2. //Het formulier is verzonden
  3. if(isset($_POST['submit']))
  4. {
  5. //Update alles
  6. $query = "UPDATE adres SET naam='René' WHERE id=2";
  7. mysql_query($query) or die (mysql_error());
  8. }
  9. //Het formulier is niet verzonden
  10. else
  11. {
  12. //Toon het formulier
  13. ?>
  14. <form method="post" action="">
  15. <input type="submit" name="submit" value="Verzenden" />
  16. </form>
  17. <?php
  18. }


http://www.site...&id=78
Offline jelleruben - 11/02/2007 19:44
Avatar van jelleruben Nieuw lid dankje voldemort,

MaarWat ik graag wil is eigelijk het volgende. Ik heb in mijn SQL database een database "adres" met daar in een tabel "adres".

Deze tabel bevat drie velden:

id int(11) auto_increment
naam varchar(255)
plaats varchar(255)

Hiervoor heb ik dus een invoer formlier wat werk.
En ik heb een list deze laat de resultaten zien van de database.

Nu wil ik dus bij die pagina list, een optie krijgen waar door je bij een naam op b.v. bewerken kan klikken. En dat je dan die gegevens kan bewerken..
Offline Voldemort - 11/02/2007 19:49
Avatar van Voldemort PHP ver gevorderde Je moet het id in het url meegeven. Dat haal je op met $_GET['id'] en dan:

$query = "SELECT `plaats` FROM `adres` WHERE `id`='".$_GET['id']."'";

Dan fetchen en in een veldje als value zetten.

Bij het verzenden kan je de inhoud van dat veldje ophalen ($_POST['veldnaam']) en dat update'en in je tabel.


Let wel op: $_GET, $_POST en $_COOKIE variablen moet je beveiligen omdat crackers anders je hele database kunnen verwoesten. M'n voorbeeld query is dus eentje met lekken erin (tenzij je op voorhand controleert met is_numeric()), maar deze is eigenlijk gewoon om aan te tonen hoe het moet.
Offline jelleruben - 11/02/2007 20:02 (laatste wijziging 11/02/2007 20:02)
Avatar van jelleruben Nieuw lid Ik heb dankzij de Tutorials, een volgende lijst weten te maken
  1. <?php
  2. mysql_connect("localhost", ".....", ".....");
  3. mysql_select_db("adres");
  4.  
  5. $res = mysql_query("SELECT id,naam,plaats FROM adres");
  6. while ($obj = mysql_fetch_object($res)) {
  7. echo $obj->id." ";
  8. echo $obj->naam." ";
  9. echo $obj->plaats."<br />";
  10. }
  11. ?>


Zou iemand mij toch nog iets verder kunnen helpen met het maken zodat ik de gegevens kan updaten, met behulp van een formulier?
Offline Voldemort - 11/02/2007 20:06
Avatar van Voldemort PHP ver gevorderde Ik leg je het allemaal uit in m'n vorige post. Wat snap je daar niet aan?
Offline jelleruben - 11/02/2007 20:13
Avatar van jelleruben Nieuw lid Nou ik heb een lijst die ik je net ook liet zien.
Ik ben iemand die het beste leert van voorbeelden.

Ik weet dus zo niet hoe ik mijn lijst aan moet passen (met een knop voor de regel bijvoorbeeld) En als je daar op klikt. en dat hij de gegevens van dat record ophaald. en dat ik die kan aanpassen.. en bewaren.

Ik met uitleg zie ik helaas niet de oplossing voor mijn probleem.
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.263s