gegevens met spatie uit db halen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Taco mathijs hillenaar

taco mathijs hillenaar

07/07/2011 14:34:48
Quote Anchor link
mijn probleem lijkt enigzins op deze vraag: http://www.phphulp.nl/php/forum/topic/variable-met-spatie-doorgeven-in-url/79009/ http://www.phphulp.nl/php/forum/topic/variable-met-spatie-doorgeven-in-url/79009/

met het verschil dat het formulier het gewoon opslaat in mijn database.

met mijn formulier kan ik in een categorie een subcategorie aanmaken. het selecteert de categorie bijv: luxe boot
en vervolgens kun je een onderwerp aanmaken: dieselmotor

hij slaat de categorie alleen op als: luxe
dus zonder de boot.

hoe krijg ik de volledige naam van de categorie mee?
 
PHP hulp

PHP hulp

21/11/2024 19:50:37
 
Sven b

Sven b

07/07/2011 15:02:25
Quote Anchor link
luxe_boot geprobeerd?
 
- SanThe -

- SanThe -

07/07/2011 15:08:41
Quote Anchor link
Zonder relevante code is het glazen bol kijken.
 
Taco mathijs hillenaar

taco mathijs hillenaar

07/07/2011 15:39:51
Quote Anchor link
het formulier. dat werkt.

Quote:
<form name="formname" method="post" action="newsub.php" enctype="multipart/form-data">
<fieldset>
<legend>onderwerp</legend>
<input name="go" type="hidden" value="check">




<div id="textH1"> Selecteer een vestiging: &nbsp; <select name="selector" onchange="showcategorie(this.value)"></div>
<option>selecteer vestiging</option>
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
<?php

$sql
= "SELECT * FROM beheer WHERE gbrid = ".$_SESSION['gbrid'] ;

$res =mysql_query($sql);
if (mysql_num_rows($res) >= 1)
{

while ($rij =mysql_fetch_array($res))
{


$sql2 = "select * FROM loc WHERE locid =" .$rij['locid'];

$res2=mysql_query($sql2);
if (mysql_num_rows($res2) >= 1)
{

while ($row2 = mysql_fetch_array($res2))
{


echo '<option value='.$row2['lokatie']. '>'.$row2['lokatie']. '</option>';
}
}
}
}

?>

</select>
<br />




<br />
<div id="txtHit"><b></b></div>

<table class="tablet">
<tr>
<td>onderwerp</td>
<td><input name="ownaam" type="text" id="ownaam" size="40"></td>
</tr>



<tr>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Verzenden">
<input type="reset" name="Reset" value="Herstellen"></td>
</tr>
</table>
<p>&nbsp;</p>
</fieldset>
</form>


het formulier dat het resultaat uitvoert:

Quote:
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php

$check
= $_POST['check'];


if ($check =="check")
{





echo "<a href=\"nassau.php\"><strong><h5>Terug naar het overzicht</h5></strong></a>";



// toon de systeem datum
echo date("m/d/y G.i:s");


echo ("<br /><br />");




                
              
                 $sql = "INSERT INTO onderwerp(ownaam, catnaam, lokatie) VALUES ('$_POST[ownaam]', '$_POST[selector2]', '$_POST[selector]')";
                
                    if (!mysql_query($sql,$link))
                    {

                    die(MySQL_Error());  
                    }

                        echo  $_POST[ownaam];
                        echo "&nbsp; is toegevoegd in categorie<br>";
                        echo  $_POST[selector2];                    
                        
    }
                    
            
 


?>


selector2 zou de volledige categorienaam moeten laten zien. in de database word deze volledig weergegeven en in het formulier kun je deze ook selecteren. maar hij geeft in de uitvoer alleen het eerste woord aan waarbij de spatie en het laatste woord dus wegvallen.

het veld is overigens een VARCHAR.
 
- SanThe -

- SanThe -

07/07/2011 15:56:08
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
// Deze regel:
echo '<option value='.$row2['lokatie']. '>'.$row2['lokatie']. '</option>';

// Moet zijn:
echo '<option value="'.$row2['lokatie']. '">'.$row2['lokatie']. '</option>';
?>


Verder is het script lek => sql-injection.
Zie mysql_real_escape_string().
 
Taco mathijs hillenaar

taco mathijs hillenaar

07/07/2011 16:09:21
Quote Anchor link
dang, quotes :-/

en idd. niet alle scripts zijn beveiligd tegen sql injecties.
 



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.