Hét vraag- en antwoordplatform van Nederland

Hoe krijg ik een alert in php?

ik heb een upload systeem met captcha, ik wil graag bij een foute captcha een alert

alert('Je hebt de captcha verkeerd overgenomen. Probeer het opnieuw')

hoe krijg ik dit in php?

dit is mijn code:

if (md5($_POST['captcha_code']) != $_SESSION['captcha']) {
hier moet de alert
} else {
//hier is het upload gedeelte

Verwijderde gebruiker
11 jaar geleden
778

Heb je meer informatie nodig om de vraag te beantwoorden? Reageer dan hier.

Het beste antwoord

Php draait server side.
Je kan dus iets schrijven als:

echo "";

Toegevoegd na 57 seconden:
De alert = javascript = client side.
Je schrijft dus via php een stukje javascript in je html-pagina die door php gegenereerd wordt.
(Lees meer...)
11 jaar geleden
Verwijderde gebruiker
11 jaar geleden
bedankt, ik ga het zo eventjes proberen.
walter
11 jaar geleden
Soms is het mooier om een foutmelding niet in een alert te tonen waar de gebruiker per se weer op moet klikken, maar gewoon in het scherm te tonen. Eventueel in het rood.
Dan voor het rood via CSS een class aanmaken:
echo "Er gaat iets fout."; Javascript alerts zie je gelukkig niet veel.. En als iemand js uitgeschakeld heeft, ziet die de melding niet.
Verwijderde gebruiker
11 jaar geleden
ok, ik kijk eventjes.
Verwijderde gebruiker
11 jaar geleden
als ik bijv. dit doe: if (md5($_POST[‘captcha_code’]) != $_SESSION[‘captcha’]) {
echo "je faalt";
} else {
//hier is het upload gedeelte dan zet ie het altijd op de pagina, ook als je net op de pagina komt
walter
11 jaar geleden
Wanneer je net op de pagina komt, is vermoedelijk de waarde in $_SESSION[‘captcha’] leeg. Misschien moet je daar ook op controleren in je IF, of die niet leeg is. Of iets met ISSET($_SESSION[‘captcha’]) proberen.
Verwijderde gebruiker
11 jaar geleden
ik heb nu dit, maar hij laat de tekst altijd zien: //zoeken naar map uploads // nog naar kijken want kan niet naar 777 toestemming zetten
$dir = "up/";
if (!is_dir($dir)) {
mkdir ($dir, 0777);
} if (md5($_POST['captcha_code']) != $_SESSION['captcha']) {

print "Vergeet niet de Captcha correct in te vullen"; } else {

//na op upload klikken
if (isset($_POST['submit'])) {
//uppen
$uploaddir = "up/";
$uploadfile = $uploaddir . basename($_FILES['file']['name']);
//naam enzo
if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile)) {
//zeggen dat t is gelukt
print "

Het bestand ".$_FILES['file']['name']." is succesvol geupload. Je link:

";
} else {
//error // moet nog echo met uitleg maken: if $error == ERROR_[error] dan uitleg printen
print "Er is een fout opgetreden:
";
print $_FILES['file']['error'];
}
}
}
//voor de debug
//debugging info:
//echo "info
";
//print_r ($_FILES); ?>

Upload Host :: Boobytrap Media





Kies een bestand om te uploaden.











captcha

Neem de bovenstaande tekens correct over.
(alleen kleine letters en getallen)








Verwijderde gebruiker
11 jaar geleden
De reden dat de foutmelding altijd toont is omdat je niet controleert of het form is ge-submit, dit doe je als volgt:
if($_SERVER['REQUEST_METHOD'] == 'POST'){
if (md5($_POST[‘captcha_code’]) != $_SESSION[‘captcha’]) {
print "Vergeet niet de Captcha correct in te vullen"; } else {
//rest van je code
}
}
Verwijderde gebruiker
11 jaar geleden
bedankt! ik ga het proberen!
Verwijderde gebruiker
11 jaar geleden
yea, het werkt!! bedankt man!:)

Weet jij het beter..?

Het is niet mogelijk om je eigen vraag te beantwoorden Je mag slechts 1 keer antwoord geven op een vraag Je hebt vandaag al antwoorden gegeven. Morgen mag je opnieuw maximaal antwoorden geven.

0 / 2500
Gekozen afbeelding