[PHP]Lastig probleem invoeren gegevens

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo,

mijn probleem is een lastige (denk ik althans)
ik maak een site voor een boekenwinkel en nu wil ik als men een nieuw boek toe wil voegen de mogelijkheid geven om uit een pulldown menu OF een nieuwe auteur toe te voegen OF een bestaande auteur te kiezen. In zekere zin is dit me al gelukt middels de volgende code:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<div id=\"div_1\">
<label for=\"auteur\"></label> 
<select name=\"auteur\" id=\"auteur\">
<option value=\"leeg\">Selecteer de Auteur</option>
<option value=\"nieuwauteurselect\" onclick=\"show('div_2')\">Auteur staat niet in lijst</option>
<option value=\"leeg\"></option>
";
                    
while ($record = mysql_fetch_array($auteursqlresult, MYSQL_ASSOC)){
print "
<option value=\"". $record["auteurID"] . "\">". $record["voornaam"] . " " .$record["achternaam"] . "</option>\n
";
}
                    
print "
</select>
</div>
<br />
<div id=\"div_2\">
Naam <input type=\"text\" name=\"nieuwauteurvoor\"><br />
Achternaam <input type=\"text\" name=\"nieuwauteurachter\">
</div>


div 2 laat hij netjes zien als die optie geselecteerd is en toevoegen is ook geen probleem.
het punt echter is dat ik niet weet hoe ik de "toevoeg" optie kan identificeren.
ik voeg alles namelijk toe via de volgende code
code:
1
2
3
4
5
6
7
8
9
            if ( $_POST["auteur"] == nieuwauteurselect ) {
            
                $auteurquery = "INSERT INTO `auteur` (`voornaam`, `achternaam`) VALUES ('$nieuwauteurvoor', '$nieuwauteurachter')";
                mysql_query($auteurquery) or die("auteurs Query failed");
                
                $auteurid = mysql_insert_id();
            }else{ 
                $auteurid = ?????;
            }

het punt is nu dus.. hoe krijg ik die else $auteurid nu als het auteurID dat hij als option value meeneemt in het form. Een select op naam gaat niet (denk ik) omdat ik het verdeeldt heb ik voor en achternaam.

ik hoop dat jullie snappen wat ik bedoel en misschien suggesties hebben :)

Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
$auteurid = $_POST['auteur'];

:?

En waarom? Omdat je als value steeds de ID van de auteur invoegt. Logisch dan dat de waarde van de selectbox uiteindelijk de ID van de auteur is als er een bestaand auteur wordt gekozen.

Overigens moet je even met javascript controleren of auteur niet de waarde leeg heeft. Dan gaat het mis natuurlijk. :)

Ik zie dat je denk dat $_POST['auteur'] uiteindelijk de waarde heeft die je als tekst hebt ingevult tussen de option tags. Dat is niet het geval. Hij krijgt de waarde die je aan het value atribuut geeft.

[ Voor 125% gewijzigd door Michali op 24-03-2005 12:40 ]

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
:>

echt soms.... dan kijk ik gewoon over de logica heen