spaties kwijt bij record uit mysql

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mischa Gorinskat

Mischa Gorinskat

08/12/2005 10:06:00
Quote Anchor link
He

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
 
PHP hulp

PHP hulp

05/11/2024 13:30:12
 
Robert Deiman

Robert Deiman

08/12/2005 10:23:00
Quote Anchor link
In principe accepteerd de html output maar 1 gewone spatie achter elkaar. Wat je wel zou kunnen doen is bij het uitlezen de spatie vervangen door   bijv zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
//$output is dan je var die je uit de database haalde
$output = str_replace(" ","&nbsp;",$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)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
//ook hier weer output de waarde die je uit de tabel haalt
$auto = explode(" ",$output);
echo '<table><tr><td>'.$auto[0].'</td><td>'.$auto[1].'</td><td>'.$auto[2].'</td></tr></table>'
// $auto[0] geeft het merk
// $auto[1] geeft het type
// $auto[2] geeft achtervoegsel (bijv GTI)

?>
Gewijzigd op 08/12/2005 10:27:00 door Robert Deiman
 
Mischa Gorinskat

Mischa Gorinskat

08/12/2005 10:28:00
Quote Anchor link
hmm tja ik ben niet helemaal duidelijk geweest. die tabel was maar een voorbeeld, eigenlijk gebruik ik een heel andere tabel met een veel logischere structuur, maar omdat de naam uit andere programma's/databases/systemen komen moeten ze hetzelfde worden opgeslagen, dus met spaties

ja ik zat net ook te denken aan die &nbsp;, 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?
 
Robert Deiman

Robert Deiman

08/12/2005 10:48:00
Quote Anchor link
&nbsp; print die niet als &nbsp; maar als spatie, en met &nbsp; kan je wel met meerdere spaties achter elkaar werken.
 
Mischa Gorinskat

Mischa Gorinskat

08/12/2005 11:00:00
Quote Anchor link
oh oh oh, ik ben nog niet zo wakker vandaag

maar je hebt helemaal gelijk

dus ik vervang in mijn lijstje de 'spaties' met '&nbsp;' en zodra hij iets wil submitten zet ik de '&nbsp;' terug om naar 'spaties' zo werkt het

dank je
 
Robert Deiman

Robert Deiman

08/12/2005 11:05:00
Quote Anchor link
Neej, andersom :P Het staat met spaties in de db. Bij het UITLEZEN moet je de spaties met de str_replace() vervangen door &nbsp;.
 
Mischa Gorinskat

Mischa Gorinskat

08/12/2005 11:12:00
Quote Anchor link
ja dat doe ik toch....

als ik ze uit de database haal doe ik str_replace ' '->'&nbsp;' en zodra ik dan weer met die gegevens in de DB wil zoeken doe ik str_replace '&nbsp;'->' ' das toch goed?
 
Robert Deiman

Robert Deiman

08/12/2005 11:45:00
Quote Anchor link
Owja.. las het verkeerd :S Sorry hoor ;)
 
Willem Jan Z

Willem Jan Z

08/12/2005 12:41:00
Quote Anchor link
Ik denk dat die 2e stap niet eens nodig is, want dan staan er gewoon 5 ' ' lege stappen achter elkaar...
Maar dat zou je even moeten testen...
 
Mischa Gorinskat

Mischa Gorinskat

08/12/2005 12:53:00
Quote Anchor link
als je met die tweede stap het terugzetten van '&nbsp;' naar ' ' bedoelt, is dat wel nodig

want de gegevens komen na selectie in een input veld te staan, dmv innerHTML en .value en met innerHTML ziet ie de &nbsp; gewoon als &nbsp; en een input box zet die niet om naar ' '

maar nogmaals bedankt, het werkt fijn zo
 



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.