login  Naam:   Wachtwoord: 
Registreer je!
 Forum

multiplebox inserten in mysql db

Offline wzshop - 31/08/2007 14:11 (laatste wijziging 31/08/2007 14:12)
Avatar van wzshopNieuw lid Hallo

Ik heb een verzendformulier wat ik naar mijn mysql database wil versturen. Alles gaat in principe goed, echter hij schrijft de multiplebox niet goed naar de database. hij schrijft enkel 1 waarde als ik er bijv. meerdere selecteer..

Wat voor type kolom moet ik in mijn mysql database gebruiken om de waardes goed weg te schrijven?

momenteel heb ik alleen het onderstaande. Het formulier ziet er zo uit:
  1. <select name="soort" size="5" multiple="MULTIPLE">
  2.  
  3. <option value="Gelderland">Gelderland</option>
  4. <option value="Noord-Holland">Noord-Holland</option>
  5. <option value="Zuid-Holland">Zuid-Holland</option>
  6. <option value="Utrecht">Utrecht</option> </select>




en de post ziet er dan zo uit:
  1. mysql_query("INSERT INTO `advertentie` (`soort`) VALUES ('". $_POST['soort']."', '". time() ."', '". $user['id'] ."', '". $_SERVER['REMOTE_ADDR'] ."')") or die (Mysql_Error());
  2. echo "Je advertentie is toegevoegd en staat online!";

vriendelijk bedankt,
robbert

6 antwoorden

Gesponsorde links
Offline Thomas - 31/08/2007 14:17
Avatar van Thomas Moderator Doe eens een print_r($_POST['soort']). Dan zul je zien dat dat een array is (als er een of meer opties geselecteerd zijn). Ik zou trouwens values numeriek laten zijn, in plaats van tekst.
Offline gerits - 31/08/2007 14:17
Avatar van gerits Lid Je krijgt een array, maar hij schrijft alleen de eerste of laatste weg, je moet gewoon deze array uitlezen in een string en dan in de database zetten. Bij het uitlezen kan je deze string dan weer splitsen
Offline wzshop - 31/08/2007 14:30
Avatar van wzshop Nieuw lid hartelijk dank voor de reacties. Hij schrijft inderdaad enkel de laatste weg.. Hoe moet ik de array uitlezen in een string en dan in de database zetten? wat bedoel je daarmee?

Sorry maar ik ben niet echt een expert...
Ik hoop dat iemand me verder kan helpen.
Vriendelijk bedankt voor je tijd,
Robbert
Offline Mad_Mike - 31/08/2007 14:35
Avatar van Mad_Mike PHP beginner Je moet van de array een string maken. In deze string staan dan alle waarden gescheiden door een ; bijv.. bij het uitlezen van de dataabase maak je van de string weer een array.

zie:
http://www.php.net/manual/en/function.implode.php
http://www.php.net/manual/en/function.explode.php


Offline wzshop - 31/08/2007 15:04 (laatste wijziging 31/08/2007 15:06)
Avatar van wzshop Nieuw lid Hmm oke bedankt.

Ik kan het helaas niet echt goed begrijpen... Ik heb nu zoiets als:

  1. $soort = "Gelderland Noord-Holland Zuid-Holland Utrecht Flevoland Noord-Brabant Zeeland Limburg Drenthe Friesland Groningen Overijssel";
  2. $devider = explode(" ", $soort);
  3.  
  4. foreach ($_POST['soort'] as $key => $value) {
  5. $soort = $soort . ", " . $value;
  6. }
  7.  
  8. soort = substr($soort, 0, -2);


en hij schrijft hem huier weg
  1. mysql_query("INSERT INTO `advertentie` (`soort`) VALUES ('". $_POST['soort']."', '". time() ."', '". $user['id'] ."', '". $_SERVER['REMOTE_ADDR'] ."')") or die (Mysql_Error());
  2. echo "Je advertentie is toegevoegd en staat online!";


Kan iemand mij verder helpen?
Offline wzshop - 31/08/2007 15:04 (laatste wijziging 31/08/2007 15:06)
Avatar van wzshop Nieuw lid Hmm oke bedankt.

Ik kan het helaas niet echt goed begrijpen... Ik heb nu zoiets als:

  1. $soort = "Gelderland Noord-Holland Zuid-Holland Utrecht Flevoland Noord-Brabant Zeeland Limburg Drenthe Friesland Groningen Overijssel";
  2. $devider = explode(" ", $soort);
  3.  
  4. foreach ($_POST['soort'] as $key => $value) {
  5. $soort = $soort . ", " . $value;
  6. }
  7.  
  8. soort = substr($soort, 0, -2);


en hij schrijft hem huier weg
  1. mysql_query("INSERT INTO `advertentie` (`soort`) VALUES ('". $_POST['soort']."', '". time() ."', '". $user['id'] ."', '". $_SERVER['REMOTE_ADDR'] ."')") or die (Mysql_Error());
  2. echo "Je advertentie is toegevoegd en staat online!";


Kan iemand mij verder helpen?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.235s