Archief - MAIL werkt niet

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Iguanatje

Legacy Member
Hey,

men php mail code werkt niet.
hij heeft noch een foutmelding noch een bevesteging dat men mail goed verzonden is.

Als iemand eens kan kijken of er een foutje in zit..

<?php

if( ( isset( $action ))
&&( $_POST[ "naam" ] != "" )
&&( $_POST[ "voornaam" ] != "" )
&&( $_POST[ "straat" ] != "" )
&&( $_POST[ "nummer" ] != "" )
&&( $_POST[ "postcode" ] != "" )
&&( $_POST[ "gemeente" ] != "" )
&&( $_POST[ "mail" ] != "" )
&&( $_POST[ "tel" ] != "" )
&&( $_POST[ "fax" ] != "" )
&&( $_POST[ "msg" ] != "" )

)
{
// Standaardwaarden
$to = "Mariman Lokeren <[email protected]>";
$subject = "Contactformulier Mariman";

// Bericht samenstellen
$message = "Berichttype: " . $_POST[ "type" ] . "\n.";
$message .= ( $_POST[ "msg" ] ) . "\n.";

// Headers: HTML + From
$headers = "MIME-Version: 1.0\n" ;
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"\n";
$headers .= "X-Priority: 1 (Higuest)\n";
$headers .= "X-MSMail-Priority: High\n";
$headers .= "Importance: High\n";
$headers = "U hebt een mail ontvangen van:" . $_POST["naam"] . $_POST["voornaam"] . "\n.";
$headers .= "E-mail:" . $_POST["mail"] . "\n.";
$headers .= "adres:" . $_POST["straat"] . $_POST["nummer"] . "," . $_POST["postcode"] . $_POST["gemeente"] . "\n.";
$headers .= "tel." . $_POST["tel"] . "\n.";
$headers .= "fax" . $_POST["fax"] . "\n.";

// Mail versturen, returnwaarde controleren
if( mail( $to, $subject, $message, $headers ) )
{
die( "Bericht verzonden." );
}
else
{
die( 'Fout bij verzenden van bericht. <a href="javascript:history.go(-1)">Probeer opnieuw</a>.' );
}
}

?>


groeten,
Jan

link contact

Tyfius

Legacy Member
Het enige wat ik zo kan bedenken is dat die in deze check iets fout tegen komt. Je hebt daar namelijk geen else-clause staan die iets raporteert als dit fout is:
Code:
f( ( isset( $action ))
&&( $_POST[ "naam" ] != "" )
&&( $_POST[ "voornaam" ] != "" )
&&( $_POST[ "straat" ] != "" )
&&( $_POST[ "nummer" ] != "" )
&&( $_POST[ "postcode" ] != "" )
&&( $_POST[ "gemeente" ] != "" )
&&( $_POST[ "mail" ] != "" )
&&( $_POST[ "tel" ] != "" )
&&( $_POST[ "fax" ] != "" )
&&( $_POST[ "msg" ] != "" )

passero

Legacy Member
Code:
<table align="center" id="Contact">
      <tr>
        <td>Naam</td>
        <td rowspan="3"><form name="form1" method="post" action="contact.php">
            <label>
            <input type="text" name="naam" id="naam">
            </label>
        </form></td>
        <td  rowspan="3"></td>
        <td  rowspan="3">Voornaam</td>
        <td  rowspan="3"><form name="form6" method="post" action="contact.php">
            <label>
            <input type="text" name="voornaam" id="voornaam">
            </label>
        </form></td>

Heel die HTML is fucked up. Ge opent verschillende keren een form, sluit het verschillende keren.
Volgens mij hebt ge nooit ALLE velden in de $_POST ....

uw laatste element'
Code:
<tr>
        <td colspan="2"><form name="form11" method="post" action="contact.php">
            <label>
            <input type="submit" name="action" id="action" value="verzend">
            </label>
            <label>
            <input type="submit" name="reset" id="reset" value="Reset">
            </label>
        </form></td>
        <td></td>
        <td colspan="2">            </td>
 
  </tr>

Dus als ge op diene button duwt stuurt hij enkel maar de value van uwe submit button door en de rest nie gezien die nie int zelfde form zitten

sarnath

Legacy Member
Al eens geprobeerd wat Tyfius zegt? een else zetten en zien of hij daar komt?
Probeer met echo's te werken, zet bijvoorbeeld eens na uwe if met al zn controles : echo "validatie" ok, en overloop zo uw code, dan komt ge wel terecht waar het foutzit.

Of gewoon uw foutmeldingen aanzetten dan zou er ook een foutbeschrijving moeten komen.

passero

Legacy Member
Aja ma wacht :D
Kdenk da ik ook eens zo iets gemerkt heb in ASP. Ik heb een hidden field met de naam action maar dacht dat da conflicten geeft met de action van uw <form>
Ben nie 100% zeker :P

probeer eerst uw eerste lijn aan te passen door:
if( ( isset( $_POST['action'] ))

probeer dan eens die action te veranderen in actie.

Als da nog nie werkt zet die code heel int begin van u pagina en post de output dan:

PHP:
echo "<pre>";
print_r($_POST);
echo "</pre>";

Iguanatje

Legacy Member
Eindelijk, het is me gelukt
if( ( isset( $_POST['submit'] )) heb ik gebruikt :)
het zal wss aan men $_POST gelegen hebben..

merci voor de antwoorden

groet Jan


ps: op naar het volgende probleem, men database verspringt bij IE :(

passero

Legacy Member
<?php

if( ( isset( $action ))

Er staat nergens $action = $_POST['action'];
dus ik vermoed dat het daaraan ligt. Maar ik denk (ben niet zeker) dat als je

$action = $_POST['action'];
if(isset($action)) doet dat je dan true krijgt door het statement ervoor $action = ....
Vandaar dat ik altijd if(isset($_POST... gebruik. Maar ik ben niet 100% zeker of dat klopt :)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan