Vraag & Antwoord

Webprogrammeren & scripting

Variabele in MySQL TEXT-field wordt niet weergegeven.

6 antwoorden
  • Ik probeer een I-frame gebruiksaanwijzing in de browser te tonen, maar een bepaalde variabele (".$user." ) wordt niet getoond. Dit is wat ik doe: In het TEXT-field van de tabel staat: [code:1:d508a2506b]<!-- begin code --> <DIV ALIGN=CENTER> <IFRAME frameborder=\"0\" src="http://www.desite.nl/tools/tool1.php?promotor=".$user."&bgcolor=FFFFFF&limit....etc [/code:1:d508a2506b] Hierbij wordt promotor=".$user." alleen maar exact weergegeven. Dus de bestaande variabele voor $user ( de gebruikersnaam )wordt niet ingevoegd. De bovenstaande HTML-insructie wordt als volgt uit de database gehaald:[code:1:d508a2506b]$sql_1="SELECT * FROM `promotor_tools` WHERE id='$tool_id'"; $resultaat=mysql_query($sql_1); // Voer sql code uit if (mysql_num_rows($resultaat) >0) { while ($rij=mysql_fetch_array($resultaat)) { $bericht_verzender=$rij["html"]; $tool_naam=$rij["naam_2"]; $tool_omschrijving=$rij["omschrijving"]; etc, etc, etc.[/code:1:d508a2506b] $rij["html"] bevat de instructies die op het scherm moeten worden getoond en ook per email worden verzonden. Op het scherm tonen doe ik als volgt: [code:1:d508a2506b]<TEXTAREA ROWS="10" COLS="40" STYLE='WIDTH:600;HEIGHT:400' > <? echo $bericht_verzender ?> </TEXTAREA>[/code:1:d508a2506b] Ik voor =".$user." al verschillende varianten geprobeerd: $user, '$user', <? echo $user ?> maar niets helpt tot nu toe. Weet iemand van jullie hoe je dit oplost?
  • Ik zou eens heel goed gaan nadenken over je opzet. PHP variabelen in een table field gaat natuurlijk nooit werken.
  • <?php echo $user ?>
  • promotor=<?php $user ?> werkt helaas ook niet. Het wordt ook exact weergegeven. Ik wil wel nadenken over mijn opzet maar weet geen betere oplossing? De tool-instructies staan in de MySql-tabel, leek mij een handige methode. Ik heb er inderdaad niet over nagedacht of het zou werken omdat ik die ervaring niet heb. Nu het zover is blijkt het misschien niet te kunnen? Heb je een alternatief? Is TINYTEXT een alternatief? In elk geval bedankt dat jullie de moeite hebben genomen even te reageren.
  • probeer html zoveel mogelijk uit de database te houden (daar hebben ze ook templates voor uitgevonden, als je je html er uit haalt kan je het als volgt aanpakken: [code:1:5d74fb3478] --------------------- | id | gebruiker | |-----|------------| | 1 | Hoi | | 2 | Doei | --------------------- [/code:1:5d74fb3478] en dan haal je gewoon de gebruikersnaam dus: $result = mysql_query("SELECT gebruiker FROM gebruikers WHERE id=2"); $eind = mysql_result($result); en dan kan $eind echoën ..
  • De reden waarom je de complete HTML in de database plaatst, is me ook niet helemaal duidelijk. Maar als je wil weten hoe je het kan oplossen, dan is dat als volgt. Plaats placeholders in de HTML [code:1:ee3f29bf6f] <!-- begin code --> <DIV ALIGN=CENTER> <IFRAME frameborder=\"0\" src="http://www.desite.nl/tools/tool1.php?promotor=%s&bgcolor=FFFFFF&limit....etc [/code:1:ee3f29bf6f] En vervang deze met [url=http://php.net/sprintf](s)printf[/url] in je PHP code [code:1:ee3f29bf6f] printf($string_uit_db, $user); [/code:1:ee3f29bf6f]

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.