Hallo SD,
ik ben bezig met een hobby-projectje en nu loop ik, als php-n00b, tegen een dingetje aan: Als ik een DB-cell vul met een Comma Seperated string met variabel aantal items, hoe lees ik die dan uit en hoe doe ik dan een soort van foreach()?
De truc ligt hem hier dus in het variabel aantal items in één regel. Ik zou wel 15 regels code met check kunnen doen, maar mij lijkt me dat het korter en makkelijker kan.PHP Code:
$mijn_items = $inhoud_van_db_cell_CS; //variable lengte - 3 tot 15 entries
$uitvoer = explode(",", $mijn_items);
// nu komt het dan
// voor elke $uitvoer[x]; wil ik eenzelfde regel printen. bijvoorbeeld
echo "<span class='whatever'>$uitvoer[x]</span>";
Alvast bedankt!
- explode()
-
07-03-2020, 20:24 #1
- Berichten
- 449
- Lid sinds
- 13 Jaar
explode()
-
07-03-2020, 20:56 #2Blue Popsicle B.V.
- Berichten
- 456
- Lid sinds
- 17 Jaar
Re: explode()
foreach($uitvoer as $item) { hier je html, met in $item de waarde }
-
07-03-2020, 22:20 #3
- Berichten
- 449
- Lid sinds
- 13 Jaar
Re: explode()
Dank je! Ik heb nu alleen de seperator vervangen door een dubbele hyphen (--) zodat ik ook content kan schrijven met komma's.
-
08-03-2020, 06:52 #4Particulier
- Berichten
- 1.422
- Lid sinds
- 17 Jaar
Re: explode()
Veiliger en beter: serialize() gebruiken bij invoeren van data en unserialize() om uit te lezen. Daarna kun je gewoon een foreach() gooien.
https://www.php.net/serialize
-
08-03-2020, 22:17 #5
- Berichten
- 449
- Lid sinds
- 13 Jaar
Re: explode()
Iets met teveel bomen en het bos niet zien; teveel informatie op die pagina. Het formulier zit in een beschermd gebied (als je daarin komt, boeit de veiligheid van het script al niet meer) en het is de bedoeling dat ik in één form field gewoon een aantal termen (denk hierbij aan tags, features o.i.d.) achter elkaar intik (meteen inclusief de seperator >> term1--term2--iets met, jazeker, een komma--etc )
Als je misschien een werkbaar voorbeeld zou kunnen laten zien?
-
09-03-2020, 09:02 #6
- Berichten
- 488
- Lid sinds
- 15 Jaar
Re: explode()
Afhankelijk hoe je die tags aanbied via de POST, is dit een array of doe je dit met een text-veld als een string?
-
09-03-2020, 20:41 #7
- Berichten
- 449
- Lid sinds
- 13 Jaar
Re: explode()
single text-field string
-
10-03-2020, 08:59 #8
- Berichten
- 488
- Lid sinds
- 15 Jaar
Re: explode()
Als je alles van elkaar wilt onderscheiden via een explode(); komt dit als een array terug.
Snap niet helemaal je doel wat je met deze gegevens doet, maar als ik je goed begrijp zou ik zoiets doen.
https://paste.ofcode.org/Y2VJY3p8vcChvZpkReFgeU
-
10-03-2020, 15:40 #9
- Berichten
- 449
- Lid sinds
- 13 Jaar
Re: explode()
Dat met die foreach loop (dus zonder count en array); dat had Matthijs ook al aangedragen en heb ik in (bijna) gebruik.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic