Afbeelding tonen met echo?
De situatie:
Een formulier dat de in te vullen velden controleert zodra iemand naar een volgend veld springt...als een veld fout is ingevuld verschijnt er een waarschuwing naast het veld dat foutief is ingevuld.
Als een veld echter correct is ingevuld komt er een tekst als 'Correct!' naast het ingevulde veld te staan.
Oke...
Nu wilde ik i.p.v. de tekst 'Correct!' (of whatever) een plaatje presenteren van een 'groen vinkje'. Maar...dit krijg ik maar niet voor elkaar?!?
Na gezocht te hebben en niets gevonden te hebben dat werkt besloot ik de vraag hier maar te stellen.
Ik gebruik een volgende echo om de afbeelding te presenteren:
echo "<img src=\"images/image001.jpg\" width=\"20\" height=\"20\" />";
...? Maar dit werkt niet, er verschijnt simpelweg de gehele 'IMG tag als platte tekst'.
Weet iemand wat ik verkeerd doe?
Probeer dat eens.
Ook met een geheel http://www.blabla.nl/images/image001.jpg adres e.d....?!
Erg frustrerend dit...dat dit niet lukt?!? :worried:
Code (php)
edit: sommige afbeeldingen worden niet weergeven als je de verkeerde bestandsextensie hebt, het kan zijn dat dit met hoofdletters te maken heeft: jpg, JPG, JPEG, jpeg
Gewijzigd op 11/06/2010 20:10:55 door Bas IJzelendoorn
Je gebruikt wellicht javascript? Misschien jQuery? In dat geval kan het zo wezen dat de string als tekst in de html geplaatst word. Het moet als html in de html geplaatst worden. Anders ff het betreffende stukje javascript geven. PHP heeft hier niks mee te maken of de output moet nog een keer door htmlentities gehaald worden ofzo ...
Ik gebruik het volgende script:
http://particletree.com/features/degradable-ajax-form-validation/
...in de pagina formvalidation.php staat de betreffende code...is erg eenvoudig en overzichtelijk, dus niet meteen schrikken.
In het originele script wordt de tekst 'Thank You' getoond als een formulier-veld correct is ingevuld.
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
function handleHttpResponse() {
if (http.readyState == 4) {
//results is now the feedback from the asp page
results = http.responseText.split(",");
document.getElementById(gShow).innerHTML = "";
document.getElementById(gShow).appendChild
(document.createTextNode(sResults[0]));
}
}
if (http.readyState == 4) {
//results is now the feedback from the asp page
results = http.responseText.split(",");
document.getElementById(gShow).innerHTML = "";
document.getElementById(gShow).appendChild
(document.createTextNode(sResults[0]));
}
}
En dat het niet werkt lijk me dan duidelijk: "createTextNode". Je zou het eens kunnen proberen om de functie om te bouwen naar:
Het werkt! Dankzij jouw Javascript aanpassing, Piet...Hartstikke bedankt voor het helemaal verdiepen in het javascript, daar had ik niet eens aan gedacht, dacht aan PHP.
Maar...ik wil natuurlijk nieuwe en totaal andere velden toevoegen dan in het kant & klare download-script. Dit lijkt ook niet te lukken...zoals ik voor ogen had.
Heb jij hier nog tips over Piet?
Gewijzigd op 12/06/2010 02:02:31 door Erick Schluter