php Formular aus 3 dateinen in index included

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • php Formular aus 3 dateinen in index included

    hallo user ich wollte gerne ein kontkatformular einbauen wo auch der user der es benutzt eine bestätigung erhält das seine daten abgesendet sind.

    ich include alle meine seiten per php

    habe 3 dateien erstellt:
    einmal die kontakt.inc.php
    mail.inc.php
    got.inc.php

    nun funktioniert aber nicht die got.inc.php wird includet wo dann stehen musste ihre daten wurden versendet.

    es erscheint bloss dieser fehler:

    Warning: Cannot modify header information - headers already sent by (output started at /mnt/web8/33/55/51901755/htdocs/index.php:39) in /mnt/web8/33/55/51901755/htdocs/content/mail.inc.php on line 35

    ich ahbe auch noch die dateianhänge gemacht das man mein problem besser verstehenn kann an was es vielleicht liegt.


    Kann mir da jemand bitte so nach meinen aussagen weiterhelfen?.

    gruß, talkuvit
    Angehängte Dateien
    Zuletzt geändert von talkuvit; 19.10.2009, 23:50.

  • #2
    Wofür gibt es wohl den Sticky, der immer ganz oben in diesem Forenbereich angezeigt wird?

    http://www.php-resource.de/forum/php...formation.html
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      hallo wahsaga,
      habe mir deinen link der auf einen beitrag führt gut duchgelesen.
      nur ich habe es wirklich nciht verstanden genau.

      oder kann es sein das ich bloss einen direkten link zu einer seite für die bestätigung definieren muss in html , so das die bestätigungsseite gar nicht includen kann mit php?

      Kommentar


      • #4
        Hallo,

        dann lies es dir bitte nochmal durch und dann nochmal und dann darfst du gerne konkret nachfragen was genau du daran nicht verstanden hast. Denn so schwer ist es eigentlich nicht.

        Gruß,

        Amica
        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
        Super, danke!
        [/COLOR]

        Kommentar


        • #5
          oder hat das was mit der html ausgabe zu tun das diese schon erfolgt ist durch daten senden vom formular ? und dadurch diese Header modifzieren nicht mehr funktioniert ?

          ich weis wirklich keinen weg mehr weiter. bzw wie ich das umschrieben muss

          Kommentar


          • #6
            Zitat von talkuvit Beitrag anzeigen
            oder hat das was mit der html ausgabe zu tun das diese schon erfolgt ist durch daten senden vom formular ? und dadurch diese Header modifzieren nicht mehr funktioniert ?
            Genau daran liegt es.

            Zitat von talkuvit Beitrag anzeigen
            ich weis wirklich keinen weg mehr weiter. bzw wie ich das umschrieben muss
            Da du jetzt weißt, woran es liegt, sollte das doch kein Problem mehr für dich sein.
            [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
            Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
            Super, danke!
            [/COLOR]

            Kommentar


            • #7
              oki ,, nur wie schreibe ich es nun um das ich die header

              ("Location: $strReturnhtml")

              wieder sinnvoll nutzen kann in der mail.inc-php datei?

              bzw was kann man denn ander dieser stelle verweden was sinn macht das man ein includete seite als bestädigung bekommt?

              kann man das mit java in php realisieren??

              <script language="javascript"><!--
              location.href = 'http://weiterleitung.de/seite.php';
              //-->
              </script>
              Zuletzt geändert von talkuvit; 20.10.2009, 01:12.

              Kommentar


              • #8
                Entweder du includest den HTML-Code der Bestätigung oder du leitest auf eine komplette Bestätigungsseite um. Beides geht nicht, du machst aber momentan beides und das ergibt ganz offensichtlich keinen Sinn.

                Das ist das Problem, wenn man zusammengeklauten Code ohne nachzudenken übernimmt.
                [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                Super, danke!
                [/COLOR]

                Kommentar


                • #9
                  ja ich habe mir den code abgeschaut das stimmt schon.

                  mh, so sieht meiner nun aus in der mail.inc.php
                  (wo habe ich da nun was doppelt?)
                  bzw ab wo darf ich was löschen das es nicht doppelt ist, weil ich doch schon gerne erstmal auf eine andere seite hin includen möchte.



                  ist es diese zeilen?:


                  mail($var_to,"Mitteilung vom Kontaktformular - aseberlin.de",$strMailtext ,"FROM:
                  $var_from\r\nReply-to: $var_from\r\nReturn-path: info@test.de")
                  or die("Die Mail konnte nicht versendet werden.");





                  orignial code:

                  <?php
                  $strReturnhtml = 'index.php?site=got';
                  $strDelimiter = ":\t";
                  $var_from = "info@test.de";
                  $var_to ="fritz.talkuvit@gmx.de";
                  if($_POST)
                  {
                  $strMailtext = "";
                  while(list($strName,$value) = each($_POST))
                  {
                  if(is_array($value))
                  {
                  foreach($value as $value_array)
                  {
                  $strMailtext .= $strName.$strDelimiter.$value_array."\n";
                  }
                  }
                  else
                  {
                  $strMailtext .= $strName.$strDelimiter.$value."\n";
                  }
                  }
                  if(get_magic_quotes_gpc())
                  {
                  $strMailtext = stripslashes($strMailtext);
                  }
                  mail($var_to,"Mitteilung vom Kontaktformular - aseberlin.de",$strMailtext ,"FROM:
                  $var_from\r\nReply-to: $var_from\r\nReturn-path: info@test.de")
                  or die("Die Mail konnte nicht versendet werden.");
                  }
                  header("Location: $strReturnhtml");
                  exit();

                  ?>



                  oder ist es eben bloss diese zeile??
                  header("Location: $strReturnhtml");
                  nur wie leite ich dann weiter , ich sehe hier nicht direkt eine dopperlte weiterleitung ```???????
                  Zuletzt geändert von talkuvit; 20.10.2009, 01:39.

                  Kommentar


                  • #10
                    Lieber Raphael,

                    liest du dir bitte mal durch was ich geschrieben habe?

                    Man kann nicht "auf eine andere seite hin includen". Wenn man auf eine andere Seite umleiten will, darf man keinen HTML-Code ausgeben (genauer gesagt überhaupt nichts) und setzt dafür den Location-Header. Wenn man was includet wird dessen Inhalt sozusagen an die Stelle des include-Aufrufs reinkopiert.

                    Beides geht nicht.

                    Und nein, diese Zeilen sind es nicht. Das Versenden der Mail an sich hat mit dem Problem überhaupt nichts zu tun.
                    [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                    Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                    Super, danke!
                    [/COLOR]

                    Kommentar


                    • #11
                      oki ,, na dann geht es wohl auch nicht was ich grad vor hatte mit


                      header("Location: 'http://www.test.de/index.php?site=got'");
                      exit();

                      ?>

                      das auszustauschen mit

                      include 'http://www.test.de/index.php?site=got';
                      exit();


                      ......
                      der fehler leigt aber in der datei mail.inc.php
                      und nicht in der index.php???


                      case 'home': $include_content = 'content/home.inc.php'; break;
                      case 'wir': $include_content = 'content/wir.inc.php'; break;
                      case 'service': $include_content = 'content/service.inc.php'; break;
                      case 'kontakt': $include_content = 'content/kontakt.inc.php'; break;
                      case 'mail': $include_content = 'content/mail.inc.php'; break;
                      case 'got': $include_content = 'content/got.inc.php'; break;
                      case 'anfahrt': $include_content = 'content/anfahrt.inc.php'; break;
                      case 'impressum': $include_content = 'content/impressum.inc.php'; break;
                      case 'galerie': $include_content = 'content/galerie.inc.php'; break;
                      case 'jobs': $include_content = 'content/jobs.inc.php'; break;
                      case 'bewerber': $include_content = 'content/bewerber.inc.php'; break;
                      case 'team': $include_content = 'content/team.inc.php'; break;
                      case 'cocacola-2007': $include_content = 'content/cocacola-2007.inc.php'; break;
                      case 'ruegen': $include_content = 'content/ruegen.inc.php'; break;
                      case 'baumfest': $include_content = 'content/baumfest.inc.php'; break;
                      case 'hafenfest': $include_content = 'content/hafenfest.inc.php'; break;
                      case 'brandenburger': $include_content = 'content/brandenburger.inc.php'; break;


                      ?>


                      du was macht denn nun bei mir mehr sinn eine reine umleitung oder das pure includen von einer anderern seite??

                      ich bin bissel verwirrt grad
                      Zuletzt geändert von talkuvit; 20.10.2009, 01:56.

                      Kommentar


                      • #12
                        Wenn du "deinen" Code kennen würdest, wüsstest du, wie man includet, weil du das in der index.php schon für alle Unterseiten machst. URLs haben da nichts verloren.

                        Eine Umleitung macht in diesem Fall keinen Sinn, bleib bei include.
                        [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                        Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                        Super, danke!
                        [/COLOR]

                        Kommentar


                        • #13
                          du es hat funktioniert mit
                          <?php
                          $strDelimiter = ":\t";
                          $var_from = "noreply@pagelock.de";
                          $var_to ="fritz.talkuvit@gmx.de";
                          if($_POST)
                          {
                          $strMailtext = "";
                          while(list($strName,$value) = each($_POST))
                          {
                          if(is_array($value))
                          {
                          foreach($value as $value_array)
                          {
                          $strMailtext .= $strName.$strDelimiter.$value_array."\n";
                          }
                          }
                          else
                          {
                          $strMailtext .= $strName.$strDelimiter.$value."\n";
                          }
                          }
                          if(get_magic_quotes_gpc())
                          {
                          $strMailtext = stripslashes($strMailtext);
                          }
                          mail($var_to,"Mitteilung vom Kontaktformular - aseberlin.de",$strMailtext ,"FROM:
                          $var_from\r\nReply-to: $var_from\r\nReturn-path: info@test.de")
                          or die("Die Mail konnte nicht versendet werden.");
                          }
                          include("content/got.inc.php");
                          exit();
                          ?>
                          Zuletzt geändert von talkuvit; 20.10.2009, 02:45.

                          Kommentar


                          • #14
                            der nachteil ist aber bei dieser sache das er mir nicht die vollständige seite / index darstellt

                            sie ist ja in 3 teile/bereiche aufgeteilt:

                            OBEN

                            MITTE ( INCLUDED )

                            UNTEN



                            und jetzt wird die eine Datei Included aber dann verschwindet der Bereich UNTEN.

                            worann kann das liegen?

                            Kommentar


                            • #15
                              Am exit().
                              [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
                              Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
                              Super, danke!
                              [/COLOR]

                              Kommentar

                              Lädt...
                              X