besondere include frage

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

  • besondere include frage

    Hi!

    ich bin php anfänger und hab folgende problemstellung:

    ich hab eine hp die mit includes in mein layout diversen content reinlädt, auch ein kontaktformular, dass, wenn man auf "abschicken"
    klickt, ausgeben soll, dass der versand geglückt oder missglückt ist.


    Funktioniert alles prima, wenn ich die datei direkt im browser aufrufe.
    ABER: wenn ich die datei über index.php?page=kontakt oder übers
    menü aufrufe und auf "senden" klicke, springt die seite auf
    www.xxxxxx.at/index.php zurück, ohne was auszugeben
    und ohne ein mail zu versenden!

    Hier meine codes (achtung gekürzt!!):
    Mein include in der index.php

    PHP-Code:
    <div id="content"> 

    <?php if($page=='') {
                
    $page='home';
                            [...]
    } else {
        print 
    "The file".$page."does not exist";
    }
    }
    else {
        if (
    file_exists("inc/".$page.".php")) {
         
    $page basename($page);
        include 
    "inc/".$page.".php";
        }
        else { print 
    "The file".$page."does not exist";
        }
    }
                
                
    ?>
    und der code der kontakt.php

    PHP-Code:
    <?php

    // *** Deine Mailadresse (Empfänger) ***
    $mail_to="xxx@gmx.at";
    // *************************************

    $from_name=$_POST['fromname'];
    $from_mail=strtolower($_POST['frommail']);
    $mail_text=$_POST['mailtext'];
    $send=$_POST['s'];

    <
    form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    [...]
    </
    table>
    </
    form>

    <?
    php
    } else {
      
    $header="From: $from_name <$from_mail>\n";
      
    $header.="Reply-To: $from_mail\n";
      
    $header.="X-Mailer: PHP-FormMailer ([url]www.gaijin.at[/url])\n";
      
    $header.="Content-Type: text/plain";
      
    $mail_date=gmdate("D, d M Y H:i:s")." +0000";
      
    $send=0;
      if(@
    mail($mail_to,$mail_subject,$mail_text,$header))
      {
        echo 
    "Die E-Mail wurde gesendet.";
        echo 
    "<a href=\"".$_SERVER['PHP_SELF']."?from_name=$from_name&from_mail=$from_mail\" target='_self'>Zurück zum Formular</a>";
      }else{
        echo 
    "<b>Beim Versenden der E-Mail ist ein Fehler aufgetreten!</b>";
        echo 
    "<br><a href=\"".$_SERVER['PHP_SELF']."?from_name=$from_name&from_mail=$from_mail&mail_subject=$mail_subject&mail_text=";
        echo 
    urlencode($mail_text)."\">Zurück zum Formular</a>";
      }
    }
    ?>
    Habt ihr eine Idee?!?
    Ich hoff ihr könnt mir helfen!

    Danke,
    ALEX

  • #2
    PHP-Code:
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    da fehlt der benötigte get-parameter. schau dir mal den erzeugten quellcode an, da steht mit sicherheit bei action nur index.php

    und informier dich bitte auch über das thema register_globals

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      hi peter!

      ja du hast recht!!

      PHP-Code:
      <form action="/index.php" method="post"
      [räuuusper] äh, und wie geht das mit dem "get"-parameter? ;-)

      lg,
      alex

      Kommentar


      • #4
        [räuuusper] äh, und wie geht das mit dem "get"-parameter? ;-)
        z.B. so:
        ABER: wenn ich die datei über index.php?page=kontakt oder übers...
        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          wie??

          Kommentar


          • #6
            PHP-Code:
            echo $_SERVER['PHP_SELF'
            ergibt index.php.

            also was ergibt index.php&page=kontakt?

            peter
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar


            • #7
              suuuuuuper! habs scho!

              1+1=2!

              PHP-Code:
              <form action="<?php echo $_SERVER['PHP_SELF']."?page=kontakt2"?>" method="post">
              daaanke!
              Zuletzt geändert von lx_1; 12.07.2007, 13:32.

              Kommentar

              Lädt...
              X