Versio

session array ontleden

Overzicht Reageren

Arne

Arne

04/02/2010 15:28:00
Quote Anchor link
hallo

ik ben een registreer formulier aan het maken.
Als alle velden correct ingevuld zijn en gevalideerd zijn
worden alle waardes uit de session array $aContent[] afgebeeld op het scherm, dit werkt, op deze manier

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
$aContent[] = '<p><b>Het resultaat, de input:</b></p>';
        $aContent[] = '<ul>';
        
            
        foreach($_SESSION['input'] as $sKey => $sValue)
        {
            $aContent[] = '<li>'.$sKey.': '.$sValue.'</li>';            
            
        }
        $aContent[] = '</ul>';



nu wil ik, dat ook de gegevens naar de database gestuurd worden.

dit is de sql code die ik al heb

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$sql = "
    INSERT INTO leden
    (
       user,
       voornaam,
       achternaam,
       email,
       postcode,
       woonplaats,
       geboortejaar
    )
    VALUES
    (
     'test'
    )
";


nu probeer ik aan de hand van diezelfde sessionarray, de gegevens in de query te plaatsen

maar hoe spreek ik de verschillende opties in de array appart aan?
zodat ik in de query 'test' kan vervangen door een de lijst van waardes uit de array

thanks so much in advance!
grtz
Arne
 
PHP hulp

PHP hulp

25/05/2012 15:36:38
Gesponsorde koppelingen:
 
- SanThe -

- SanThe -

04/02/2010 15:33:00
Quote Anchor link
Zie foreach().
 
Thijs Damen

Thijs Damen

04/02/2010 15:34:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php //(special for wim!)
$fieldlist = "";
$updatelist = "";
foreach ($_SESSION as $key => $val) {
  $fieldlist .= $key. ','
  $updatelist .= "'".$val."',";
}


$fieldlist = substr($fieldlist, 0, strlen($fieldlist)-1);
$updatelist = substr($updatelist , 0, strlen($updatelist )-1);

$query = "INSERT INTO leden ( ".$fieldlist.") VALUES ( ".$updatelist.")";
[
/code]
ABSOLUUT NIET DE MOOISTE OPLOSSING.
Maar 't werkt wel ;)
Gewijzigd op 01/01/1970 01:00:00 door Thijs Damen
 
Arne

Arne

04/02/2010 16:25:00
Quote Anchor link
thx man,
heb er net mee zitten spelen en het werkt bijna!

als ik fieldlist en updatelist echo krijg ik

gebruikersnaam,voornaam,achternaam,email,email2,postcode,woonplaats,geboortejaar

'ghghfg','ghfdgdf','fdgdfgdf','bla@bla.be','bla@bla.be','4655','sdfdsfsf','2010'

dus het zit wel degelijk goed
maar er wordt helaas niks naar de database geschreven :( en ik krijg ook geen foutmeldingen meer ...
heb met simpelere testjes vanalles geprobeerd, de connectie naar de database werkt wel degelijk, ben er ingeslaagd enkel de naam enzo te laten wegschrijven, dus .....

enig idee hoe dit kan komen misschien?
thx in advance

alsook zeg je dat dit niet de mooiste oplossing is,
wat is dan wel een courante manier van werken om dit te bekomen?

thx again !
 
Arne

Arne

04/02/2010 16:27:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
dit is de code

$fieldlist = "";
$updatelist = "";

foreach ($_SESSION['input'] as $key => $val) {
  $fieldlist .= $key. ',';
  $updatelist .= "'".$val."',";
}



$fieldlist = substr($fieldlist, 0, strlen($fieldlist)-1);
$updatelist = substr($updatelist , 0, strlen($updatelist )-1);

echo $fieldlist;
echo $updatelist;

$query = "INSERT INTO leden ( ".$fieldlist.") VALUES ( ".$updatelist.")";

if(!$res = mysql_query($sql))
{
    trigger_error(mysql_error().'<br />In query: '.$sql);
}
 
- SanThe -

- SanThe -

04/02/2010 16:29:00
Quote Anchor link
Misschien moet je de query ook uitvoeren. (Dat zie ik nog nergens nl.).
 
Lauren Zonneveld

Lauren Zonneveld

04/02/2010 17:33:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
$fieldlist
= "";
$updatelist = "";
foreach ($_SESSION as $key => $val) {
  $fieldlist .= $key. ','
  $updatelist .= "'".$val."',";
}


$fieldlist = substr($fieldlist, 0, strlen($fieldlist)-1);
$updatelist = substr($updatelist , 0, strlen($updatelist )-1);
?>

Is dit niet hetzelfde?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$fieldlist
= implode(" ,", array_keys($_SESSION));
$updatelist = "'".implode("' ,'", $_SESSION)."'";
?>
 



Overzicht Reageren