Laat alleen source code zien
Hallo,
Ik heb een youtube tut gevolgd van Jaffie75 (PHP contact form).
Alles na getyped, (goede les geweest, kreeg prima uitleg over de codering)
Maar wanneer ik op verzenden klik, laad hij de php pagina, met daarin de source code.
Iemand enig idee hoe ik er voor kan zorgen dat het wél goed werkt?
Ben nu al 2 dagen bezig met 1 contact formuliertje...
Dat moet sneller kunnen!
Thx voor de reacties
Hieronder de php
<!-- succes message goes here-->
Dank u voor uw interesse, wij zullen zo spoedig mogelijk contact met u opnemen. <br/>
Klik<a href="index.html"> hier</a>om terug te gaan naar de HOME pagina.
en hier het html gedeelte(alleen de div):
<div id="form-wrap">
<form action="contact.php" method="post">
<fieldset>
<label class="labelone" for="name">Naam: </label>
<input name="name"/>
<label for="email">Email: </label>
<input name="email"/>
<label for="comments">Bericht: </label>
<textarea name="comments"></textarea></br>
<input class="btn" type="submit" value="Versturen"/>
<input class="btn" type="reset" value="Opnieuw"/>
</fieldset>
</form>
</div>
Ik heb een youtube tut gevolgd van Jaffie75 (PHP contact form).
Alles na getyped, (goede les geweest, kreeg prima uitleg over de codering)
Maar wanneer ik op verzenden klik, laad hij de php pagina, met daarin de source code.
Iemand enig idee hoe ik er voor kan zorgen dat het wél goed werkt?
Ben nu al 2 dagen bezig met 1 contact formuliertje...
Dat moet sneller kunnen!
Thx voor de reacties
Hieronder de php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<?php
if(isset($_POST['email'])){
// hier is de email naar, informatie
$email_to = "mijn@emailadres.nl";
$email_subject = "Dit is van mijn website contact formulier.";
$email_from = "basisvoorgroei.";
// error code
function die($error){
echo "Het spijt ons, maar er is een fout gevonden in uw verzonden mail.";
echo "Deze fouten verschijnen hieronder.<br/><br/>";
echo $error. "<br/><br/>";
echo "Gaat u alstublieft terug om de fouten te herstellen.<br/>";
die();
}
// validatie
if(!isset($_POST['name']) ||
!isset($_POST['email']) ||
!isset($_POST['comments'])){
died('Het spijt ons, maar er is een fout gevonden in uw verzonden email.');
}
$name = $_post['name'];
$email = $_post['email'];
$comments = $_post['comments'];
$error_message = "";
$error_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .='Het ingevoerde email adres is onjuist.<br/>';
}
$string_exp = "/^[A-Za-z.'-]+$/";
if(!preg_match($string_exp, $name)){
$error_message .='Het ingevoerde naam is onjuist.<br/>';
}
if(strlen($comments) < 2){
$error_message .= 'Het bericht wat u verzend is onjuist.<br/>';
}
if(strlen($error_message) > 0 ){
died($error_message);
}
$email_message = "Formulier details hier beneden.\n\n";
function clean_string($string){
$bad = array("content-type", "bcc:", "to:", "cc:", "href");
return str_replace($bad, "", $string);
}
$email_message .= "name:" . clean_string($name) . "\n";
$email_message .= "email:" . clean_string($name) . "\n";
$email_message .= "comments:" . clean_string($name) . "\n";
// creer email headers
$headers = 'From: ' .$email_From . "\r\n". 'Reply-To:' . $email. "\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
if(isset($_POST['email'])){
// hier is de email naar, informatie
$email_to = "mijn@emailadres.nl";
$email_subject = "Dit is van mijn website contact formulier.";
$email_from = "basisvoorgroei.";
// error code
function die($error){
echo "Het spijt ons, maar er is een fout gevonden in uw verzonden mail.";
echo "Deze fouten verschijnen hieronder.<br/><br/>";
echo $error. "<br/><br/>";
echo "Gaat u alstublieft terug om de fouten te herstellen.<br/>";
die();
}
// validatie
if(!isset($_POST['name']) ||
!isset($_POST['email']) ||
!isset($_POST['comments'])){
died('Het spijt ons, maar er is een fout gevonden in uw verzonden email.');
}
$name = $_post['name'];
$email = $_post['email'];
$comments = $_post['comments'];
$error_message = "";
$error_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .='Het ingevoerde email adres is onjuist.<br/>';
}
$string_exp = "/^[A-Za-z.'-]+$/";
if(!preg_match($string_exp, $name)){
$error_message .='Het ingevoerde naam is onjuist.<br/>';
}
if(strlen($comments) < 2){
$error_message .= 'Het bericht wat u verzend is onjuist.<br/>';
}
if(strlen($error_message) > 0 ){
died($error_message);
}
$email_message = "Formulier details hier beneden.\n\n";
function clean_string($string){
$bad = array("content-type", "bcc:", "to:", "cc:", "href");
return str_replace($bad, "", $string);
}
$email_message .= "name:" . clean_string($name) . "\n";
$email_message .= "email:" . clean_string($name) . "\n";
$email_message .= "comments:" . clean_string($name) . "\n";
// creer email headers
$headers = 'From: ' .$email_From . "\r\n". 'Reply-To:' . $email. "\r\n" .
'X-Mailer: PHP/' . phpversion();
@mail($email_to, $email_subject, $email_message, $headers);
?>
<!-- succes message goes here-->
Dank u voor uw interesse, wij zullen zo spoedig mogelijk contact met u opnemen. <br/>
Klik<a href="index.html"> hier</a>om terug te gaan naar de HOME pagina.
en hier het html gedeelte(alleen de div):
<div id="form-wrap">
<form action="contact.php" method="post">
<fieldset>
<label class="labelone" for="name">Naam: </label>
<input name="name"/>
<label for="email">Email: </label>
<input name="email"/>
<label for="comments">Bericht: </label>
<textarea name="comments"></textarea></br>
<input class="btn" type="submit" value="Versturen"/>
<input class="btn" type="reset" value="Opnieuw"/>
</fieldset>
</form>
</div>
Gesponsorde koppelingen:
Heb je een server waar PHP op gehost kan worden? Heeft het bestand wel een .php extentie?
Ja contact.php en heb dit geïnstalleerd https://chrome.google.com/webstore/detail/noaneddfkdjfnfdakjjmocngnfkfehhd
Zou moeten werken zo toch?
Zou moeten werken zo toch?
Weet zo niet wat chromePHP is, maar dit lijkt me meer zoiets als FireBug. Een tool/addon in de browser om websites te testen etc.
Wat jij nodig hebt is een server die PHP ondersteund. PHP is een serverside taal en word dus op een server uitgevoerd en dus niet in de browser en je kunt het dus niet zoals html gewoon openen in de browser via C:\Program Files\website etc.
Of neem een host of zorg er voor dat je een lokale server op je pc hebt zoals WAMP
Wat jij nodig hebt is een server die PHP ondersteund. PHP is een serverside taal en word dus op een server uitgevoerd en dus niet in de browser en je kunt het dus niet zoals html gewoon openen in de browser via C:\Program Files\website etc.
Of neem een host of zorg er voor dat je een lokale server op je pc hebt zoals WAMP
Ik heb WAMP al geïnstalleerd, nog niet de pc uit gehad in tussentijd..
Ga ik nu proberen
Ga ik nu proberen
voor zover ik weet hoeft dat ook niet.
1) Dan zet je je bestanden in een nieuwe folder in de www map.
2) Zet wamp aan
3) ga naar de browser en dan naar localhost en klik op de nieuwe folder
1) Dan zet je je bestanden in een nieuwe folder in de www map.
2) Zet wamp aan
3) ga naar de browser en dan naar localhost en klik op de nieuwe folder
Is dat een instelling die ik bv in dreamweaver kan doen? Zoiets zag ik wel voorbij komen?
want bij wat je bij punt 1,2 en 3 zegt, ben ik zoals de film op rtl 5 nu... Clouless
want bij wat je bij punt 1,2 en 3 zegt, ben ik zoals de film op rtl 5 nu... Clouless
dreamweaver heeft hier niks mee te maken. Je moet gewoon zorgen dat je PHP bestanden op een server staan en anders doet je script het niet.
Ik zal het zo goed mogelijk uitleggen wat je moet doen, aangezien je niet echt heel veel verstand van zaken hebt.
1) Wamp 2.2 installeren
2) Wamp 2.2 starten
3) Icoontje van Wamp komt rechts onderin je taakbalk te staan (Groen icoontje betekend dat alles werkt)
4) Ga naar de folder van Wamp (C:/ etc), daar vind je een folder genaamd WWW
5) Maak daar een nieuwe folder in genaamd: ContactForm
6) Start een browser op
7) Ga naar localhost/ContactForm
Nu moet je je contact form te zien krijgen en moet PHP werken.
Succes, beter kan ik het je niet uitleggen.
PS Mail functie werk niet op zomaar localhost, aan je localhost moet je eerst een mailserver koppelen via SMTP bv of gewoon via instellingen van php.ini
Ik zal het zo goed mogelijk uitleggen wat je moet doen, aangezien je niet echt heel veel verstand van zaken hebt.
1) Wamp 2.2 installeren
2) Wamp 2.2 starten
3) Icoontje van Wamp komt rechts onderin je taakbalk te staan (Groen icoontje betekend dat alles werkt)
4) Ga naar de folder van Wamp (C:/ etc), daar vind je een folder genaamd WWW
5) Maak daar een nieuwe folder in genaamd: ContactForm
6) Start een browser op
7) Ga naar localhost/ContactForm
Nu moet je je contact form te zien krijgen en moet PHP werken.
Succes, beter kan ik het je niet uitleggen.
PS Mail functie werk niet op zomaar localhost, aan je localhost moet je eerst een mailserver koppelen via SMTP bv of gewoon via instellingen van php.ini
Dreamweaver heeft niks met php te maken.
Start WAMP gewoon opnieuw op en je webserver zou moeten werken.
Start WAMP gewoon opnieuw op en je webserver zou moeten werken.
Allereerst dank voor de snelle reacties en de tips!
Ik heb de WAMP aanstaan, alles in de folder geplaatst zoals HJ zei. Krijg telkens fout meldingen dat ik onjuiste gegevens heb ingevoerd...
Ik heb alles even online gezet: http://www.basisreclame.nl/contact.html
Dan zien jullie wat er mis gaat...
Wat doe ik fout?!
Groet!
Ik heb de WAMP aanstaan, alles in de folder geplaatst zoals HJ zei. Krijg telkens fout meldingen dat ik onjuiste gegevens heb ingevoerd...
Ik heb alles even online gezet: http://www.basisreclame.nl/contact.html
Dan zien jullie wat er mis gaat...
Wat doe ik fout?!
Groet!
regel 11 krijg je een error, function die($error){ even veranderen naar function died($error){
Aangepast. Nu krijg ik een .preg_match terwijl ik alle velden goed invul.
$_post bestaat niet. Altijd met hoofdletters $_POST.
Is dat dan html taal ofzo?
Want in dreamweaver vult hij dat zelf aan...
Toevoeging op 09/02/2012 01:23:44:
Oke het helpt, zo het lijkt. Echter nog niet helemaal.
Krijg deze melding:
Warning: preg_match() [function.preg-match]: Empty regular expression in /home/basisrec/domains/basisreclame.nl/public_html/contact.php on line 33
Het ingevoerde email adres is onjuist.
Want in dreamweaver vult hij dat zelf aan...
Toevoeging op 09/02/2012 01:23:44:
Oke het helpt, zo het lijkt. Echter nog niet helemaal.
Krijg deze melding:
Warning: preg_match() [function.preg-match]: Empty regular expression in /home/basisrec/domains/basisreclame.nl/public_html/contact.php on line 33
Het ingevoerde email adres is onjuist.
Dat komt omdat DreamWeaver een vreselijk product is. $_POST is PHP.
En probeer nu eens zelf te leren debuggen i.p.v. alle errors direct hier te plaatsen. Stappen:
1) Vertaal de error en probeer hem te begrijpen
2) Op welke regel staat de error? Doorzoek die regel en een paar erboven en een paar eronder
3) Als je variabele in die regel gebruikt kijk je wat de waarde van die variabele zijn, door bijv. var_dump te gebruiken of goed je script te volgen.
4) Probeer op deze manier de fout te vinden.
5) Pak google en zoek op alleen de foutmelding, zonder persoonlijke dingen als bestandsnaam, on line ..., enz.
6) Kom je er nog steeds niet uit? Plaats het dan hier op het forum.
En probeer nu eens zelf te leren debuggen i.p.v. alle errors direct hier te plaatsen. Stappen:
1) Vertaal de error en probeer hem te begrijpen
2) Op welke regel staat de error? Doorzoek die regel en een paar erboven en een paar eronder
3) Als je variabele in die regel gebruikt kijk je wat de waarde van die variabele zijn, door bijv. var_dump te gebruiken of goed je script te volgen.
4) Probeer op deze manier de fout te vinden.
5) Pak google en zoek op alleen de foutmelding, zonder persoonlijke dingen als bestandsnaam, on line ..., enz.
6) Kom je er nog steeds niet uit? Plaats het dan hier op het forum.
Gewijzigd op 09/02/2012 07:56:55 door Wouter J
Ik denk dat ik het al weet, ik heb echter niet de oplossing.
Ik heb deze || erin staan (regel 20), volgens de 'leraar' betekend het OR of in dit geval AND. Maar ik twijfel of ik de juiste functie heb geprobeerd.
Weet iemand hoe de functie OR of AND werkt?
BVD!
Toevoeging op 09/02/2012 11:54:37:
Excuus dames en heren! Ik google eerst even!! :P
Ik heb deze || erin staan (regel 20), volgens de 'leraar' betekend het OR of in dit geval AND. Maar ik twijfel of ik de juiste functie heb geprobeerd.
Weet iemand hoe de functie OR of AND werkt?
BVD!
Toevoeging op 09/02/2012 11:54:37:
Excuus dames en heren! Ik google eerst even!! :P
Mark botter op 09/02/2012 11:52:11:
volgens de 'leraar' betekend het OR of in dit geval AND
Het is niet de ene keer dit en de andere keer dat.
|| is or (als één van beiden waar is)
&& is and (als beiden waar zijn)
Zoals SanThe al zei || betekend OR, en && betekend AND. In PHP gebruik je nooit OR of AND maar || en &&. OR en AND gebruik je alleen in MySQL.
En wat betreft de fout melding van preg_match:
Je hebt op regel 33 dit staan if(!preg_match($email_exp, $email)) { en de foutmelding zegt 'Empty regular expression', dus bij $email_exp gaat het mis want dat is de regular expression. Hij zegt dat die leeg is, dus of $email_exp is niet geset of $email_exp is leeg. In jouwn geval is die niet geset.
Dus verander
naar
En wat betreft de fout melding van preg_match:
Je hebt op regel 33 dit staan if(!preg_match($email_exp, $email)) { en de foutmelding zegt 'Empty regular expression', dus bij $email_exp gaat het mis want dat is de regular expression. Hij zegt dat die leeg is, dus of $email_exp is niet geset of $email_exp is leeg. In jouwn geval is die niet geset.
Dus verander
naar
Gewijzigd op 09/02/2012 12:15:19 door Hertog Jan
Hertog Jan op 09/02/2012 12:14:02:
In PHP gebruik je nooit OR of AND maar || en &&. OR en AND gebruik je alleen in MySQL.
Onzin.
Heb alles gecontroleerd. Ik krijg nu telkens een foutmelding dat mijn email adres niet klopt.
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]
{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .= 'Het ingevoerde email adres is onjuist.<br/>';
}
?>
$error_message = "";
$email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]
{2,4}$/';
if(!preg_match($email_exp, $email)){
$error_message .= 'Het ingevoerde email adres is onjuist.<br/>';
}
?>



