kiezen welk veld wordt opgeslagen in de database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Seb wd

seb wd

12/12/2008 22:42:00
Quote Anchor link
Hello all,

Ik heb eeb formulier gemaakt waar men via een dropdown merken kan selecteren. Het kan gebeuren dat er een merk niet tussen staat en dus heb ik een veld er naast staan waar ze het merk kunnen intypen.

Nu vraag ik mij af hoe ik kan zorgen dat het script weet welk veld gebruikt wordt om het merk in de database op te slaan. Als men een merk uit de dropdown gebruikt, dan wordt deze gebruikt en als men het veld ernaast gebruikt, dan wordt deze gebruikt.

Ik heb één kolom in de database, genaamd 'merk' en daar wil ik dus het desbetreffende merk in opgeslagen hebben.

Seb.
 
PHP hulp

PHP hulp

22/12/2024 11:25:01
 
Joren de Wit

Joren de Wit

12/12/2008 22:53:00
Quote Anchor link
Sowieso heb je lijkt me een optie 'overig' in je dropdown box staan? In de controle van je formulier kun je kijken of die optie geselecteerd is en als dat het geval is de waarde uit het textveld ernaast gebruiken...

Iets in de trend van:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
if($_POST['merk'] == 'overig')
{

    // Gebruik het text veld
}
?>
 
Toine vd P

Toine vd P

12/12/2008 22:55: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
<select name="merk_selectie">
 bla bla
</select>
<input type="text" name="merk_handmatig" />

en dan met PHP iets in de strekking van;

if (strlen($_POST['merk_handmatig'])) {
 $merk = 'blar blar';
} else {
 $merk = 'jaddiejaddie';
}
$query = sprintf("select * from iets where merk like '%%%s%%'",mysql_real_escape_string($merk));


Die richting
 
Joren de Wit

Joren de Wit

12/12/2008 23:08:00
Quote Anchor link
@Twan: een paar opmerkingen over je code. Allereerst is het gebruik van strlen() hier niet echt netjes. Als je wilt weten of een variabele leeg is of niet, gebruik dan liever de functie die daarvoor bedoeld is: empty().

Verder is in jouw geval de dropdown box nutteloos zodra er ook maar iets in het textveld ingevuld is, ook als er wel een keuze is gemaakt met die dropdown box. Ik zou zelf kiezen voor een optie 'overig' en zodra die geselecteerd is pas kijken naar de waarde in het text veld.

Uiteraard in dat laatste geval niet vergeten te controleren of het text veld wel correct ingevuld is ;)
 
Frank -

Frank -

12/12/2008 23:21:00
Quote Anchor link
@Blanche: empty() is een raar ding, 0 is schijnbaar ook een lege string... Wanneer je op een lege string vergelijkt, kijk dan naar ''. Dát is een lege string.
 
Joren de Wit

Joren de Wit

12/12/2008 23:25:00
Quote Anchor link
Hmm, true. Maar wie vult er dan ook 0 als merk in? :P

Maar goed, controleer inderdaad dus liever op een lege string.
 
Onbekend Onbekend

Onbekend Onbekend

12/12/2008 23:27:00
Quote Anchor link
Blanche schreef op 12.12.2008 23:25:
Hmm, true. Maar wie vult er dan ook 0 als merk in? :P

Maar goed, controleer inderdaad dus liever op een lege string.


Je hebt zo van die bezoekers die vullen de raarste dingen in. Ook één op mijn site ging porno plaatjes uploaden, ze weten toch dat ik die met één druk op een knop kan verwijderen, waarom doen ze het dan?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.