option value ophalen

  • Hoi, heb een vraag.
    Ik vraag het volgende op:


    Code
    $eigen_tekst = mysql_query("SELECT * FROM `verhalen` ORDER BY tekst ASC");
                                    echo "<td class=\"tdn\" width=\"25%\"><select name=\"select_verhaal\"/>";
                                    while ($eigen_tekst2 = mysql_fetch_array($eigen_tekst))
                                    {
                                    echo "<option value=\"" . $eigen_tekst2['id'] . "\"/>" . $eigen_tekst2['tekst'] . " </option />";
                                    }
                                    echo "</select /></td />";


    Je krijgt nu te zien:


    Verhaal1
    Verhaal2 etc.


    Nu laat de verhalen zien en kan ik de verhalen aanklikken dat ie daar naar toe gaat.
    Maar ik wil er nog een tabel aan toevoegen.
    Laat ik het tabel moppen noemen. Die wil ik als eerst oproepen en dan pas verhalen.
    Dus dat je dan te zien krijgt:
    Mop1
    Mop2
    Verhaal1
    Verhaal2


    Wil dus meerdere tabelen kunnen toevoegen aan de option value.


    Weet iemand hiervoor misschien een oplossing?


    MIjn dank is groot :thumbup:

  • Guest, wil je besparen op je domeinnamen? (ad)
  • Geen idee of dit kan in php, je bedoelt dat je in je while 2 dingen tabellen aan je @value toevoegen, dit gaat niet. Je kan hier maar 1 tabel waardes aan voeren. Ik snap ook niet waarom je dit zou willen, je kan er nog zo goed een while loop onder zetten.


    En nog even een tip, MySQL is verouderd. Gebruik MySQLi of PDO voor het verbinden met databases.


    Alvast succes :)


    Mvg,
    Tim Nijborg

    PHP, JAVA, C#, JAVASCRIPT, HTML(5), CSS(3) developer.
    Vragen?! Stuur me gerust een prive bericht :) !

  • Dit is mogelijk en niet zo heel moeilijk. Echter doe je qua HTML iets verkeerd en qua PHP doe je iets niet "veilig".


    Elke HTML tag sluit jij af door na de '<' een '/' te plaatsen, dus bijvoorbeeld: <option></option>. Jij doet dit: <option></option />. Die laatste '/' bij </option/> is niet nodig. Deze gebruik je alleen als de tag maar een kant heeft, bijvoorbeeld: <br />.


    Verder gebruik je MySQL. Dit is niet erg, elke beginnende programmeur in PHP begint met MySQL. In de nieuwste versie's van PHP wordt MySQL niet meer ondersteund. Aangezien je een nieuw bent in het programmeren (want helemaal niet erg is) raad ik je aan om MySQLi (je kan ook op andere sites zoeken, zoals deze) te gebruiken. Lees deze websites is rustig door. Als je later met classes gaat werken in PHP kan je het beste PDO gebruiken, maar daar hoef je nu niet naar te kijken.


    Hier is de code, op de manier hoe jij hem gemaakt hebt (die ik niet aanbeveel te gebruiken):



    Als je nog vragen hebt over MySQL, MySQLi of andere dingen kan je mij altijd een privé bericht sturen.


    EDIT:
    MySQL is ook niet (altijd) veilig. Dit komt omdat je bij MySQL vaak SQL Injections kunt doen. Dit is een soort aanval op je MySQL Query waardoor 'hackers' data uit je database kunnen krijgen die eigenlijk helemaal niet voor hun bedoel zijn. Zoals wachtwoorden en andere gevoelige data.

  • Nou dank je wel Dees Oomens.
    Het werkt.


    Van die tags heb je gelijk, stond al zo in de source dus had er niet opgelet.


    mysql_query kan ik dus beter allemaal vervangen, oke loop het door, bedankt voor het mooie antwoord. top


    Niet alleen mysql_query vervangen, heel MySQL vervangen met MySQLi. MySQLi schrijf je bijna op de zelfde manier als MySQL. Er zijn echter wel wat dingen die anders gaan. Deze moet je even goed opzoeken. Zoek wat voorbeelden of tutorials op.


    Als je de tijd neemt en heel deze uitleg/tutorial leest, ben je een pro in MySQLi ;) . Wel de tijd nemen en alles goed doorlezen. Veel mensen kopieren meteen de code. Dit werkt vaak wel, maar dan snap je nog steeds niet wat het precies doet en als er iets fout gaat weet je niet wat je fout doet.


    Als je nog meer vragen hebt hoor ik ze graag!

  • @D.Oomens: jij hebt het waarschijnlijk meer over het gebruik van MySQL, wat niet altijd veilig zou zijn.


    Het potentiële veiligheidsprobleem wat je noemt (SQL-injectie) komt voort uit een onjuist gebruik van MySQL bij het opbouwen van je (dynamische) queries in de code waarmee je communiceert met je MySQL-database.


    PHP heeft voorzieningen om SQL-injectie tegen te gaan, het is de verantwoordelijkheid van de programmeur dat hij/zij vertrouwd is met de regels van het spel om queries (en op grotere schaal, de gehele applicatie) veilig te maken.


    Een handgranaat is niet onveilig als je weet wat je doet. Als je dit niet weet... Tsja.

  • Ik zou dit symantisch gezien schijden van je php code. En dit in een view mapje zetten onder een bepaald bestandje. Die dan verwerkt wordt door een template engine.


    Zo hou je het overzichtelijker

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!