kostenloser Webspace werbefrei: lima-city


php kontaktformular funktioniert nicht

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    ambrosia

    ambrosia hat kostenlosen Webspace.

    Hi zusammen,

    ich habe eben ein Kontaktformular hochgeladen, dieses ist auch zu 100 % funktionsfähig.
    Wenn ich es über lima ausführe, bekomme ich keine benachrichtigung.

    Komisch ist allerdings, wenn ich es mir vom filemanager nochmal runterlade,
    fehlt das komplette script, es geht erst wieder mit dem html teil los.

    Hat jemand eine Lösung.


    Viele Grüße
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. So wird dir sicherlich niemand helfen können :-( ...lade doch mal das Kontaktformular auf deinen Webspace mit der Endung .txt
    Dann kann man sich den Quelltext ansehen und bestimmt auch eine Lösung finden.

    Grüßle
  4. Hi,

    falls du ein Kontaktformular mit der PHP Funktion mail() benutzt, solltest du überprüfen, ob mail() auch aktiviert ist. Auf vielen Freehostern ist das nähmlich nicht der Fall (hier weiß ich es jetzt aber gerade nicht auswendig).

    Yazurah
  5. Autor dieses Themas

    ambrosia

    ambrosia hat kostenlosen Webspace.

    http://ambrosia.lima-city.de/kontaktformular.txt

    Hier ist es
  6. Also ... lass dir sagen, das du die Eingegebenen Daten überhaupt nicht verarbeitest ^^

    Probiere es dann nochmal ;)

    Beitrag geändert: 8.1.2009 16:31:11 von nilswerner
  7. Hi,

    die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
    Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.

    Gruß
    Karlja
  8. karlja schrieb:
    Hi,

    die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
    Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.

    Gruß
    Karlja

    Die interessiert doch ersteinmal gar nicht...
    als allerstes musst du doch irgendwie die eingegebenen werte/daten mit php verarbeiten...

    Dein Script kann mit sowas allein nix anfangen:
    Name: $name

    was sollte das auch sein?
    Es ist nur eine Undefinierte Variable..
    Du musst dieser Variablen erst deinen Wert zuweisen..
    z.B. so:
    $name = $_POST['name'];

    nun kann php damit weiter arbeiten
  9. Wie nilswerner gesagt hat. Das $name als post geht nur, wenn register_globals angeschaltet ist. Kannst du aber einstellen, ist jedoch nicht zu empfehlen ( Dieses Feature ist DEPRECATED (veraltet) und wird in PHP 6.0.0 ENTFERNT. Sich auf dieses Feature zu verlassen ist in keiner Weise empfehlenswert. Quelle: php.net)

    Du musst also empfangene Daten erstmal den Variablen zuweisen:

    <?php
    $name = $_POST['name']; // Falls Daten per Post übergeben werden
    $name = $_GET['name']; // Falls Daten per Get übergeben werden
    $name = $_COOKIE['name']; // Falls Daten per Cookie übergeben werden
    
    $name = $_REQUEST['name']; // Falls Daten per Post,Get oder Cookie übergeben werden, aber nicht zu empfehlen
    ?>


    Gruß, Prog
  10. @prog und nilswerner
    Auf lima ist register_globals aber standardmäßig an, weswegen es eigentlich funktionieren sollte.
  11. nilswerner schrieb:
    karlja schrieb:
    Hi,

    die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
    Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.

    Gruß
    Karlja

    Die interessiert doch ersteinmal gar nicht...
    als allerstes musst du doch irgendwie die eingegebenen werte/daten mit php verarbeiten...


    Da keine Benachrichtigung ankommt und zumindest der nicht variable Text ja verschickt werden müsste, scheint mit der mail-Funktion oder seiner Einbindung etwas nicht in Ordnung zu sein.
  12. tct schrieb:
    @prog und nilswerner
    Auf lima ist register_globals aber standardmäßig an, weswegen es eigentlich funktionieren sollte.
    Es sollte schon funktionieren, aber für eine Variante sollte er sich entscheiden ^^ er hat nämlich keine ^^
    karlja
    Da keine Benachrichtigung ankommt und zumindest der nicht variable Text ja verschickt werden müsste, scheint mit der mail-Funktion oder seiner Einbindung etwas nicht in Ordnung zu sein.

    Wie sollte denn auch irgendwas versand werden?

    if ($ErrorMsg == "" and $send){
      mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n");
    
      /*Soll der Absender eine Kopie erhalten?*/
      if ($kopie == "ja"){
        mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n");
      }
      $gesendet = "1";
    }

    Du benutzt immer die variable $send aber was soll damit sein? die gibts bei dir nicht..bzw wurde nicht definiert...
    da kann nix bei rauskommen...

    Gib am anfang des Skriptes mal folgendes ein:
    error_reporting(E_ALL);
    und beseitige alle fehler...
  13. nilswerner schrieb:
    Wie sollte denn auch irgendwas versand werden?

    if ($ErrorMsg == "" and $send){
      mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n");
    
      /*Soll der Absender eine Kopie erhalten?*/
      if ($kopie == "ja"){
        mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n");
      }
      $gesendet = "1";
    }

    Du benutzt immer die variable $send aber was soll damit sein? die gibts bei dir nicht..bzw wurde nicht definiert...
    da kann nix bei rauskommen...

    Gib am anfang des Skriptes mal folgendes ein:
    error_reporting(E_ALL);
    und beseitige alle fehler...

    Die variable $send wird während des Absenden des Formulars bei Register Globals on auf "Formular absenden" gesetzt. Sie existiert also und solang er keinen Fehler bei der Eingabe gemacht hat, sollte die Mail versendet werden.

    Lass dir doch einfach mal in der Zeile unterhalb des Mail-Versands den letzten registrierten Error ausgeben. Vielleicht bringt der dich ja weiter.

    Gruß
    Karlja
  14. karlja schrieb:
    Die variable $send wird während des Absenden des Formulars bei Register Globals on auf "Formular absenden" gesetzt. Sie existiert also und solang er keinen Fehler bei der Eingabe gemacht hat, sollte die Mail versendet werden.

    Das passiert aber in dem Skript so nicht ^^
    Hier hab ich mal ein wenig was eingefügt..
    so gehts...nur die mail adresse ändern ;)
    <?php
    if(isset($_POST['send'])){
    $name		= $_POST['name'];
    $vorname	= $_POST['vorname'];
    $strasse 	= $_POST['strasse'];
    $hausnummer	= $_POST['hausnummer'];
    $plz		= $_POST['plz'];
    $ort		= $_POST['ort'];
    $telefon	= $_POST['telefon'];
    $fax		= $_POST['fax'];
    $geb		= $_POST['geb'];
    $mail		= $_POST['mail'];
    $location	= $_POST['location'];
    
    $ErrorMsg = "";
    $webmaster = "info@nils-werner.com";
    $absender = "info@nils-werner.com";
    $betreffwebmaster ="Ambrosia-FM - Anfrage";
    $betreffabsender ="Ambrosia-FM - Anfrage";
    $koerperwebmaster = "
    $vorname $name hat soeben eine Nachticht hinterlassen:
    
    Daten zur Person:
    Name: $name
    Vorname: $vorname
    Strasse: $strasse $hausnummer
    Ort: $plz $ort
    Telefon: $telefon
    Telefax: $fax
    Firma: $geb
    E-Mail: $mail
    Mitteilung: $location
    
    
    Mit freundlichen Grüßen
    $vorname $name
    mailto:$mail
    ";
    
    $koerperabsender = "
    Vielen Dank für Ihre Mitteilung
    
    Wir haben folgende Daten von Ihnen erhalten:
    
    Name: $name
    Vorname: $vorname
    Strasse: $strasse $hausnummer
    Ort: $plz $ort
    Telefon: $telefon
    Telefax: $fax
    Firma: $geb
    E-Mail: $mail
    Mitteilung: $location
    
    
    
    Mit freundlichen Grüßen
    Ambrosia-FM
    ";
    
    
    
    if ($mail == ""){
      $ErrorMsg .= "Bitte geben Sie eine E-Mail Adresse an";
    }
    else if ($geb == ""){
      $ErrorMsg .= "Bitte geben Sie Ihre Firma an";
    }
    else if ($mail != ""){
      if (ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$", $mail)){}
      else {
        $ErrorMsg .= "Bitte geben Sie eine g�ltige E-Mail Adresse an";
      }
    }
    
    if ($ErrorMsg == ""){
      mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n");
    
      /*Soll der Absender eine Kopie erhalten?*/
      if ($kopie == "ja"){
        mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n");
      }
      $gesendet = "1";
    }
    }
    ?>
    <html>
    <head>
    <title>Kontakt</title>
    </head>
    <body link="#808080" vlink="#808080" alink="#808080" background="http://www.ambrosia-fm.de/images/about.jpg">
    <div style="position:absolute; width:256; height:380;">
      <center>
        <form name="form" action="kontakt-form-test.php" method="post">
          <? If ($gesendet == "1"){ ?>
          <br />
          <br />
          <p align="left"><font face="Arial" size="1" color="#808080">Vielen Dank,</font></p>
          <p align="left"> <font face="Arial"  size="1" color="#808080">wir haben Ihre Nachricht erhalten und werden<br />
            uns umgehend bei Ihnen melden.</font></p>
          <font face="Arial" size="2">
    <? }else { ?>
          </font>
          <center>
          <table border="0" width="200">
            <? if (ErrorMsg != ""){echo "<td colspan=4><font face=Arial size=1 color=#FF0000>".$ErrorMsg."</font></td>";}?>
            <!--Anschrift-->
            <tr>
              <td align="center" valign="top" colspan="4"><p align="left"><b><font face="Arial" size="2" color="#7F8FA9">kontakt</font></b></td>
            </tr>
            <tr>
              <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">Name:<br>
                </font>
                <input name="name" value="<? echo "$name"; ?>" size="10" maxlength="30" tabindex="10" ?>
                </font></td>
              <td width="250"><font face="Arial"><font size="1" color="#808080">Vorname:<br>
                </font>
                <input name="vorname" value="<? echo "$vorname"; ?>" size="10" maxlength="30" tabindex="11" ?>
                </font></td>
            </tr>
            <tr>
              <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">Strasse:<br>
                </font>
                <input name="strasse" value="<? echo "$strasse"; ?>" size="10" maxlength="30" tabindex="12" ?>
                </font></td>
              <td width="250"><font face="Arial"><font size="1" color="#808080">Hausnummer:<br>
                </font>
                <input name="hausnummer" value="<? echo "$hausnummer"; ?>" size="2" maxlength="30" tabindex="13" ?>
                </font></td>
            </tr>
            <tr>
              <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">PLZ:<br>
                </font>
                <input name="plz" value="<? echo "$plz"; ?>" size="4" maxlength="30" tabindex="14" ?>
                </font></td>
              <td width="250"><font face="Arial"> <font size="1" color="#808080">Ort:<br>
                </font>
                <input name="ort" value="<? echo "$ort"; ?>" size="10" maxlength="30" tabindex="15" ?>
                </font></td>
            </tr>
            <tr>
              <td colspan="2" width="165"><font face="Arial"><font size="1" color="#808080">Telefon:<br>
                </font>
                <input name="telefon" value="<? echo "$telefon"; ?>" size="10" maxlength="30" tabindex="16" ?>
                </font></td>
              <td width="250"><font face="Arial"> <font size="1" color="#808080">Telefax:<br>
                </font>
                <input name="fax" value="<? echo "$fax"; ?>" size="10" maxlength="30" tabindex="17" ?>
                </font></td>
            </tr>
            <tr>
              <td colspan="2" width="165"><font face="Arial"><font size="1" color="#808080">E-Mail:<br>
                </font>
                <input name="mail" value="<? echo "$mail"; ?>" size="10" maxlength="30" tabindex="18" ?>
                </font></td>
              <td colspan="2"width="250"><font face="Arial"> <font size="1" color="#808080">Firma:<br>
                </font>
                <input name="geb" value="<? echo "$geb"; ?>" size="10" maxlength="30" tabindex="19" ?>
                </font></td>
            </tr>
            <tr>
              <td colspan="3" width="200"><font face="Arial" size="1" color="#808080">Ihre Nachricht an uns:</font></td>
            </tr>
            <tr>
              <td colspan="3"><font face="Arial">
                <textarea name="location" tabindex="20" value="<? echo "$location"; ?>" size="26" rows="3" cols="24" ?></textarea>
                </font></td>
            </tr>
          </table>
          <p><font face="Arial">
            <input type="Submit" name="send" value="Formular absenden">
            <font size="1" color="#808080"> &nbsp;</font> </font></font></p>
          <font face="Arial" size="2">
    <?
    }
    ?>
          </font>
        </form>
      </center>
    </div>
    </center>
    </body>
    </html>
  15. Autor dieses Themas

    ambrosia

    ambrosia hat kostenlosen Webspace.

    Hi karlja

    ich habs eingebaut und hochgeladen! funzt leider trotzdem nicht!!:confused:
  16. Ich glaube, du meintest Nilswerner...
    ambrosia schrieb:
    Hi karlja

    ich habs eingebaut und hochgeladen! funzt leider trotzdem nicht!!:confused:


    Es scheint Probleme mit der Mail()-Funktion von Lima zugeben. Ich habe vorgestern versucht nur die Mail()-Funktion auszuführen und zwar keinen Fehler bekommen, aber eine E-Mail habe ich bis heute nicht.

    Gruß
    Karlja
  17. Ich hab das Skript auf meinem Server getestet, dort funktioniert es so..
    Es wird daher wohl an lima-city liegen...
  18. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!