Noob die hulp nodig heeft.

Nou goed ben nu week bezig met het voorbereiden op het maken van een portfolio site. Meeste dingen zijn geen probleem met behulp van rapid weaver. Nu ben ik dus aan het kloten met een contact formulier. (php dus) Nu heb ik er wel 1 en die werkt ook redelijk denk ik alleen als ik op verzenden druk krijg ik een error. Ook heb ik het idee dat hij het de ene keer wel doed (het uiterlijk enzo) en andere keer niet en op mijn Windows pc werkt het al helemaal niet zie ik gewoon de broncode zeg maar.

Nu zal daar allemaal wel een logische verklaring voor wezen maar ik vat hem niet. Ik host hem via mijn Powerbook met die funtie die in OSX zit. Ook dat geeft weinig problemen maar misschien dat dit wat te maken heeft met het niet goed funtioneren van het formulier?

Hier is het adres van de site:

http://82.74.112.15/~JalkePeters/index.html

De laatste pagina zal het formulier wezen.

Grappig dat je zoiets kunt maken zonder te weten hoe php werkt ;)

PHP wordt op de server uitgevoerd. Dat betekent, dat je als gebruiker nooit iets van die php code kunt zien. Jouw website maakt gebruik van .html bestanden. Daarin kun je geen php code opnemen.

Indien je webserver het ondersteunt, zal de php code uitgevoerd/berekend worden indien je je extensie wijzigt naar .php.

Succes ermee. Nog 1 vraag: waarom stel je in cookie in na het verzenden?

Het is een script door iemand anders gemaakt. Ben volkomen noob in dit. Dat hij eindigt op html komt omdat ik hem in een iFrame gezet heb. Dus dat zou geen probleem moeten zijn. De PHP file staat dus op de server en wordt ook via goeie link in het iframe gezet.

Owja en mn webserver software van die bij MAC OSX zit onder de instelling ‘‘delen’’ ondersteunt PHP zover ik weet.

De file staat inderdaad in een php bestand ([url]http://82.74.112.15/~JalkePeters/contact.php[/url]) maar ik vermoed dat je webserver gewoon geen php ondersteundt. Anders zou je nooit de php broncode kunnen zien.

Maarem mijn webserver is van Apple zelf en bij mij staat ie nu wel goed....

EDIT: Nu niet meer :sealed:

Right. ik zie het.

Dan ligt het aan je server. Je bestan http://82.74.112.15/~JalkePeters/contact.php wordt <strong>niet</strong> geparsed door je server. Probeer het ergens aan te zetten!

Uhh ff in noobtaal please :P

Hoe je het precies moet doen zal afhangen van webserver tot webserver. Aangezien het van Apple is [b:182c73086e]vermoed[/b:182c73086e] ik dat het wel makkelijk kan met één simpele druk op de knop.

Waar je volgens mij gewoon naar op zoek moet is het aanzetten van php ondersteuning.

Die van Apple is Appache

Je hebt enerzijds een webserver (bv Apache) maar daarnaast vormt PHP iets volledig aparts, net zoals een databank (MySQL bijvoorbeeld). Als je dus alles voor het eerst installeert moet je die zaken dus apart installeren. Het is echter wel zo dat de meeste servers een soort van totaal pakket vormen waarin dus enerzijds Apache zit en anderzijds enkele veelgebruikte libraries zoals php, perl, ...

Je zegt dat je de webserver van Apple gebruikt. Wat bedoel je daarmee? Ben je van plan om alles gewoon te draain op je mac en is 82.74.112.15 het IP adres van je computer of heb je ergens via een bepaalde host een Apple webserver staan waar je dingen mag opzetten?

EDIT: Ik heb eens zitten rondzoeken en misschien is dit wel iets voor jou

Die site hoeft alleen te draaien wanneer ik dat wil dus ja ik wou hem graag op mn laptop houden op dat adres :)

Kzal je link nu even bekijken!

EDIT: HIJ WEKRT!!! Thx!

Nu heb ik alleen het idee dat het formulier zelf niet werkt. Als je verzenden doet gebeurd er niet veel behalfe iets wat op een refresh lijkt…

Tja,

De broncode heb ik ondertussen al niet meer staan. ik wil je gerust verder helpen maar dan zet je het best wel nog eens online.
Als ik nu ga kijken heb ik een parse error op lijn 46

Ik herinner mij nog dat het script gebruik maakte van cookies. Misschien aanvaard je browser gewoon geen cookies? Maar het kan natuurlijk ook gewoon een foutje in het script zijn.

EDIT: lijn 27 nu dus ik veronderstel dat je eraan aan 't werken bent

Nu doet hij het weer. :) Attans het zien gedeelte :P

Inderdaad. Ook hier doet hij niets anders dan refreshen. Print anders gewoon hier even de broncode uit dan kan ik je verder helpen

Dit bedoel je denk ik met printen :innocent:

<?php

// Als er op submit word gedrukt.
if($submit)
{

// Controleren of er al een cookie gezet is of niet.
if(!isset($_COOKIE[post]))
{

// Velden controleren op leegte.
if($naam == “” || $email == “” || $onderwerp == “” || $bericht == “”)
{
echo “<center><small><font face=“Arial”>Gelieve alle velden correct in te vullen.<br><a href=“javascript:history.back(-1)”>Probeer het opnieuw</a></font></small></center>”;
}
elseif(!eregi("[A-Za-z0-9_-]+([.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([.]{1}[A-Za-z0-9-]+)+", $email))
{
echo “<center><small><font face=“Arial”>Gelieve een geldig e-mailadres in te vullen.<br><a href=“javascript:history.back(-1)”>Probeer het opnieuw</a></font></small></center>”;
}
else
{
// Formulier versturen.
$jouwemailadres = “jalkepeters@home.nl”; // Vul hier jouw e-mail in!!
$datum = date(“d-m-Y H:i”);
$ip = $_SERVER[REMOTE_ADDR];

 $ontvanger = $jouwemailadres; 
 $onderwerp = "Contact : $onderwerp"; 
 $verzender = "From: $naam &lt;$email&gt;"; 
 $inhoud = "Beste webmaster,nnOp $datum heeft $naam via je website het volgende bericht voor je achtergelaten :nn$berichtnn---------------------------------------------------------------------nDe IP van $naam = $ip"; 
 mail($ontvanger, $onderwerp, $inhoud, $verzender); 

 // Cookie post zetten. 
 setcookie(post, "je hebt een bericht verzonden", time()+300); 

 echo "&lt;center&gt;&lt;small&gt;&lt;font face=\"Arial\"&gt;Uw bericht is succesvol verstuurd aan de webmaster.&lt;br&gt;U zult binnen 24 uur antwoord krijgen van een van onze medewerkers.&lt;/font&gt;&lt;/small&gt;&lt;/center&gt;"; 

}

}
else
{
echo “<center><small><font face=“Arial” color=”#004080">U heeft zojuist al een bericht geplaatst,<br>over een aantal minuten kunt weer een bericht versturen.</font></small></center>";
}

}
else
{

// Het formulier.
?>
<center>
<form action=“contact.php” method=“POST”>
<table border=“0” width=“500” cellspacing=“0” cellpadding=“0”>
<tr>
<td width=“100%”><strong><small><font face=“Arial”>Contactformulier</font></small></strong></td>
</tr>
<tr>
<td width=“100%”><small>&nbsp; </small></td>
</tr>
<tr>
<td width=“100%”><table border=“0” width=“100%” cellspacing=“0” cellpadding=“2”>
<tr>
<td width=“100%” colspan=“2”><hr align=“left” color="#C0C0C0" width=“90%” noshade size=“1”>
</td>
</tr>
<tr>
<td width=“38%”><small><font face=“Arial”>Naam :</font></small></td>
<td width=“62%”><input type=“text” name=“naam” size=“29”></td>
</tr>
<tr>
<td width=“38%”><small><font face=“Arial”>E-mailadres :</font></small></td>
<td width=“62%”><input type=“text” name=“email” size=“29”></td>
</tr>
<tr>
<td width=“38%”><small><font face=“Arial”>Onderwerp :</font></small></td>
<td width=“62%”><select name=“onderwerp” size=“1”>
<option selected>Maak een keuze</option>
<option value=“Vraag”>Vraag</option>
<option value=“Opmerking”>Opmerking</option>
<option value=“Idee”>Idee</option>
<option value=“Klacht”>Klacht</option>
</select></td>
</tr>
<tr>
<td width=“100%” valign=“top” colspan=“2”><hr align=“left” color="#C0C0C0" width=“90%”
noshade size=“1”>
</td>
</tr>
<tr>
<td width=“100%” valign=“top” colspan=“2”><small><font face=“Arial”>Bericht :</font></small></td>
</tr>
<tr>
<td width=“100%” valign=“top” colspan=“2”><textarea rows=“6” name=“bericht” cols=“52”></textarea></td>
</tr>
<tr>
<td width=“100%” valign=“top” colspan=“2”><small><small><small><small><small><small><small>
&nbsp;&nbsp;&nbsp; </small></small></small></small></small></small></small></td>
</tr>
<tr>
<td width=“100%” valign=“top” colspan=“2”><input type=“submit” value=“Versturen”
name=“submit”></td>
</tr>
</table>
</td>
</tr>
</table>
</form>
</center>
<?php } ?>

Het probleem is dat hij niet in de eerste if statement komt. Ik weet niet of dat de boel kan oplossen maar ik vind het nogal raar dat je test op [code:1:f9d58ca123]if($submit)[/code:1:f9d58ca123] Volgens mij zal hij hier maar enkel doorkomen als $submit=1. Vervang daarom dit eens door [code:1:f9d58ca123]if(isset($submit))[/code:1:f9d58ca123]

Hmzz niks veranderd?

Is dat iets waar hij het moet wegscrhijven ofzow?

Je weet het ook niet meer?

Sorry ik had geen e-mail gekregen van je reactie. Ik ga de boel anders gewoon eens proberen bij mij en de fouten verbeteren. Als het bij mij werkt dan ligt het misschien aan het feit dat je php draait in safe modus. Maar dat zien we dan wel weer.

Ok super! Bedankt! 8) Mocht je MSN hebben ofzo dan is het misschien makkelijker als je me toevoegd dus mocht je dat willen en hebben:

jalkepeters@home.nl