spaties kwijt bij record uit mysql
Door middel van een scriptje haal ik gegevens uit een tabel en plaats deze in een lijst. (aantal span's onder elkaar). Als je nu op een van deze klikt dan zoekt ie via een functie de overige gegevens uit de tabel. Nu heb ik echter de volgende lijst in php:
Ford Focus
VW Golf
VW Golg GTI
Honda Accord
enz.
Maar in de database zijn gegevens op een andere menier opgeslagen. De gegevens in de tabel auto zien er zo uit(let op spaties):
Ford Focus
VW Golf
VW Golf GTI
Honda Accord
Waarom haalt php die spaties weg? Of wie doet dat, html, php of mysql? Het is geen optie om de gegevens anders op te slaan(zonder spaties).
Mijn document is in XHTML met charset=ISO-8859-15, als ik dit op ISO-8859-1 zet verandert dat ook niks. Mijn Database en tabellen staan op latin1_general_ci . Nou weet ik niet of het hiermee wat te maken zou hebben.
Ik zou de spaties ook kunnen vervangen dmv _ ofzo maar ik wou vragen of het ook anders kan.
Gewijzigd op 08/12/2005 10:08:00 door Mischa Gorinskat
Code (php)
1
2
3
4
5
2
3
4
5
<?php
//$output is dan je var die je uit de database haalde
$output = str_replace(" "," ",$output);
echo $output
?>
//$output is dan je var die je uit de database haalde
$output = str_replace(" "," ",$output);
echo $output
?>
Ik ben alleen wel van mening dat je de tabel beter merk en type appart kan doen. En dan in een tabel <td>MERK</td><td>TYPE</td> kan weergeven. Daardoor staan merk en type altijd recht onder elkaar. Met spaties kan daar nog wel eens verschil in zitten, zoals je ook wel bij je eigen voorbeeld kan zien, waarin je wilt laten zien hoe het eruit ziet.
Een andere oplossing (in jou geval denk ik gemakkelijker te realiseren) is met 1 spatie opslaan en dan in een tabel uitlezen:
vb.
Code (php)
Gewijzigd op 08/12/2005 10:27:00 door Robert Deiman
ja ik zat net ook te denken aan die , maar eigenlijk moet hij de waarde ook in een input printen, en dan zet ie de $nbsp; toch niet om naar een spaties? of wel?
print die niet als maar als spatie, en met kan je wel met meerdere spaties achter elkaar werken.
maar je hebt helemaal gelijk
dus ik vervang in mijn lijstje de 'spaties' met ' ' en zodra hij iets wil submitten zet ik de ' ' terug om naar 'spaties' zo werkt het
dank je
Neej, andersom :P Het staat met spaties in de db. Bij het UITLEZEN moet je de spaties met de str_replace() vervangen door .
als ik ze uit de database haal doe ik str_replace ' '->' ' en zodra ik dan weer met die gegevens in de DB wil zoeken doe ik str_replace ' '->' ' das toch goed?
Owja.. las het verkeerd :S Sorry hoor ;)
Maar dat zou je even moeten testen...
want de gegevens komen na selectie in een input veld te staan, dmv innerHTML en .value en met innerHTML ziet ie de gewoon als en een input box zet die niet om naar ' '
maar nogmaals bedankt, het werkt fijn zo