Update script nodig?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Wouter L

Wouter L

06/02/2013 11:37:19
Quote Anchor link
Beste mensen,

Ik ben een leek met PHP, maar ik had een goed werkend formulier. Nu werkt dat niet meer. Mij is verteld dat bepaalde codes verouderd kunnen zijn. Kan iemand mij in simpel Nederlands uitleggen of, wat en hoe ik onderdelen moet veranderen?

Het script is als volgt:


Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$naam
= $_POST['naam'];
if (isset($_POST['submit'])) {

    if ($naam == "") {
        $error = "Wilt u alstublieft onderaan uw naam invullen.";
        
        
        echo "<FONT COLOR=\"#F09\">".$error."</FONT><br /><br />";
        echo '<input type="button" value="Terug" onClick="goHist(-1)" />';
        
    }
else{

    $to = "[email protected]";
    $subject = "Website klachtenformulier";
    $name_field = $_POST['naam'];
    $activiteit1 = $_POST['activiteit1'];
    $activiteit2 = $_POST['activiteit2'];
    $activiteit3 = $_POST['activiteit3'];
    $option = $_POST['radio'];
    $option2 = $_POST['radio2'];
    $option3 = $_POST['radio3'];
    $option4 = $_POST['radio4'];
    $message = $_POST['overige_klachten'];
    
    foreach($_POST['klachten'] as $value) {
        $klachten_msg .= "$value\n";
    }

    
    $body = "Naam: $naam\n\nBelangrijkste klachten:\n\n$klachten_msg\n\nMoeilijkheidsgraden:\n\nvoor activiteit $activiteit1.: $option\nvoor activiteit $activiteit2.: $option2\nvoor activiteit $activiteit3.: $option3\n\nAndere lastige activiteit, niet in de lijst:\n\n30. $message met moeilijkheidsgraad $option4";

    echo "<strong>Uw formulier met behandelvragen is ontvangen!</strong>";
    mail($to, $subject, $body);
    
}}

?>


Met vriendelijke groet,

Wouter Looman
 
PHP hulp

PHP hulp

29/05/2024 09:35:50
 
Marvin H

Marvin H

06/02/2013 12:32:49
Quote Anchor link
Het kan aan mij liggen dat ik eroverheen kijk, maar dit zou gewoon moeten werken en bevat geen PHP functies of code die nu niet meer zou werken...

Wat werkt er niet aan het script? krijg je een foutmelding?
 
Wouter L

Wouter L

06/02/2013 13:06:48
Quote Anchor link
Nee, er gebeurt niets. Kijk op http://www.fysio-osdorp.nl/klachtenformulier.html voor het formulier. Na invullen en versturen krijg je een scherm te zien dat het goed gegaan is, maar ik ontvang niets. In het PHP-bestand (mailer.php) staat uiteraard mijn echte mailadres.

Misschien zit dus de fout in het formulier, maar een half jaar geleden werkte het nog wel. Zou je daar ook even naar kunnen kijken? (paginabron)

Hier in het kort:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<form name="form2" method="post" action="mailer.php" onSubmit="return GoCaptchA()">
    <td width="300" bgcolor="#DFDFFF"><table border="0">
            <tr>
              <td width="293"> <p>
              
               &nbsp;&nbsp;1.
<input type="checkbox" name="klachten[]" value="1. Liggen in bed" />
            liggen in bed
            <br />  
            
              &nbsp;&nbsp;2.
              <input type="checkbox" name="klachten[]"  value="2. Omdraaien in bed" />
            omdraaien in bed
            <br /> enz.

tot:

             <input type="submit" name="submit" value="Verzenden"/>
             <input type="reset" name="input" value="Wissen" />
             <br />
             <br /></td>
           </tr>
    </table></form>


Bij voorbaat dank,

Wouter
Gewijzigd op 06/02/2013 13:27:20 door Bas IJzelendoorn
 
Mathias B

Mathias B

06/02/2013 13:15:21
Quote Anchor link
Ben je zeker dat de mailfunctie werkt bij jouw host? Dit is meestal de oorzaak van zulke problemen, dat de hosting het gebruik van de mail-functie beperkt.
 
Marvin H

Marvin H

06/02/2013 13:17:55
Quote Anchor link
Ik denk dat het probleem zich meer bevind in de PHP configuratie van het mail systeem.
Je zou onderstaande kunnen testen om te kijken of het dan wel aankomt...

verander alleen even het TO veld en sla dit script dan op in een nieuw .php bestand en start deze dan in je browser om te kijken of je de mail ontvangt.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$to
      = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]' . "\r\n" .
    'Reply-To: [email protected]' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);
?>
 
Obelix Idefix

Obelix Idefix

06/02/2013 13:24:16
Quote Anchor link
Er is genoeg wat anders (/beter) kan in het script, maar technisch gezien zou het moeten werken.
De site wordt gehost bij KPN? Daarin is niets veranderd?
Door wie is jou verteld dat de bepaalde codes verouderd zou zijn?
Is ook aangegeven wat dan verouderd zou zijn?
Wat wel mist op regel 33 zijn de (juiste) headers. Zie http://phpwiki.santhe.nl/index.php/De_juiste_mailheaders
 
Wouter L

Wouter L

06/02/2013 13:33:42
Quote Anchor link
Nee Marvin, geupload en opgeroepen, maar ik ontvang niets... Ik weet dat het niet zo goed gaat met KPN, maar dit is toch wel slordig naar de klanten toe. Gelukkig ben ik zelf bij xs4all.

Voor *: ik ben hier een half jaar geleden al tegenaan gelopen en heb met een ander formulier toen ook dit forum benaderd: http://www.phphulp.nl/php/forum/topic/formulier-werkt-opeens-niet-meer/86549/. Maar het antwoord was me te technisch. Omdat mijn klant er eigenlijk wel van baalt, probeerde ik het nu nog maar eens opnieuw.

Dat van die mogelijk verouderde codes vond ik op http://kpn.gebruikers.eu/forum/viewthread.php?thread_id=2858

Die headers, oei dat ziet er weer uit als drie dagen gaan puzzelen...

Groet, Wouter
 
Wouter L

Wouter L

08/02/2013 10:27:24
Quote Anchor link
Ik heb het inmiddels als volgt opgelost: de PHP-bestanden staan bij mijn eigen provider (xs4all) en in het formulier staat daar een action-koppeling naar. PHP-mededelingen (bijv ontbrekende gegevens op het formulier) worden daar verwerkt, evenals een bedankmededeling; met een auto refresh komt men na een paar seconden weer terug op de homepage van de klant.
Misschien niet elegant, maar het werkt...

Groet, Wouter
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.