Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

PHP script werkt niet op windows IIS server

Anoniem
Ger
6 antwoorden
  • Beste allemaal,

    Ik heb een simpel scriptje waarmee bezoekers zich 'in kunnen schrijven' voor een nieuwsbrief.

    Dit werkt allemaal prima op een linux server maar op de 1 of andere manier niet op een windows IIS server (welke wel PHP ondersteunt).

    Het gaat om dit script
    [code:1:c263580ee5]
    <?

    if(!empty($_POST['Submit']))
    {
    if(!ereg("^[_a-zA-Z0-9-]+(\.[*@([a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,4})$", $_POST['email']))
    { $error_msg .="- U heeft geen geldig E-mailadres opgegeven.<br>"; }

    if(!empty($error_msg))
    {

    echo $error_msg;
    echo "<br><a href=javascript:history.back(1)>Probeer het nogmaals</a></p>";
    }
    else
    {
    $subject = "Aanmelding voor de nieuwsbrief - Residence Rhenen"; $header .= "MIME-Version: 1.0
    ";
    $headers = 'MIME-Version: 1.0' . "
    ";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "
    ";
    $headers .= 'CC:' ."
    ";
    $headers .= 'From: Residence Rhenen - Website <info@residencerhenen.nl>' . "
    ";
    $mail_body .= "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
    ";
    $mail_body .= "<HTML><HEAD><TITLE>Residence Rhenen - Aanmelden nieuwsbrief </TITLE>
    ";
    $mail_body .= "<META http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">
    ";
    $mail_body .= "<STYLE>BODY {MARGIN-TOP: 25px; FONT-SIZE: 10pt; MARGIN-LEFT: 25px; COLOR: #000000; FONT-FAMILY: Verdana}</STYLE>
    ";
    $mail_body .= "<BODY bgcolor=\"#FFFFFF\">
    ";
    $mail_body .= "<strong> Aanmelding voor nieuwsbrief: </strong><br><br>
    ";
    $mail_body .= "E-mailadres: " . $_POST['email'] . "<br>

    ";


    mail("info@residencerhenen.nl", stripslashes($subject), stripslashes($mail_body), $headers);

    include 'bedankt.php';

    }
    }
    else
    {
    ?>
    <script type="text/javascript">

    function tbTest_focus(el)
    {
    if(el.V) {
    if (el.value == el.V) {
    el.value = '';
    }
    } else {
    el.V = el.value;
    el.value = '';
    }
    }
    </script>
    <form action="" method="post" name="contact" id="contact" class="contact">
    <table>
    <tr>
    <td align="left">
    <h4>meld je aan</h4>
    <p>vul hieronder je mailadres in</p>
    </td>
    </tr>
    <tr>
    <td align="left"><input name="email" type="text" id="email" size="25" value="emailadres" onfocus="tbTest_focus(this);" /><input id="submitButton" type="submit" name="Submit" value="ok" /></td>
    </tr>
    </table>
    </form>

    <?php
    }
    ?>
    [/code:1:c263580ee5]

    Wat doe ik verkeerd?












  • Wat voor een foutmelding krijg je ? Weet je zeker dat die IIS server goed ondersteund, want dit is niet standaaard.

    maak eens een php bestand aan en zet daar in het volgende:

    <?php
    phpInfo();
    ?>

    Bekijk eens welke versie van php draait.

    P.S: Controleer eens of alle foutmeldingen wel goed worden weergegeven.
  • Hi bedankt voor je reactie.

    Het is versie PHP 5.2.5 (http://www.residencerhenen.nl/test.php)

    Ik krijg helemaal geen foutmeldingen te zien:
    http://www.residencerhenen.nl/nieuwsbrief.php
  • Je moet even je foutmeldingen aanzetten, mogelijk gaat er toch ergens iets niet goed. Je script lijkt niks mis mee, dus ik zou toch eerst bij iis gaan kijken.

    Je kan je foutmeldingen aanzetten in je php.ini bestand.
    (staat bij jouw bij c:\windows\php.ini)

    daarbij moet je display errors op on zetten en bij de foutmeldingen die hij moet laten zien, moet je E_ALL kiezen :)

    Succes!
  • Wederom bedankt :D

    De php.ini staat toch op de server?
    Of begrijp ik het nou verkeerd?
  • Ja, die staat op dezelfde machine als waarop je je iis draait. Volgens je phpinfo staat hij in c:\windows\php.ini

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.