Ankündigung

Einklappen
Keine Ankündigung bisher.

Scriptwechsel nach eingabe von formulardaten

Einklappen

Neue Werbung 2019

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

  • Scriptwechsel nach eingabe von formulardaten

    Tach,

    Ich habe folgendes problem und finde ums verrecken keine lösung.

    Also, das unten stehende Script funzt soweit, nur wenn man die daten ins formular eingegeben hat und es absendet soll es eigentlich auf ein anderes script wechseln. sämtliche vorschläge die ich bisher gefunden habe, zielen auf folgenden codeschnipsel ab
    PHP-Code:
     header("Location: irgendwas.php");
            die; 
    aber der geht bei mir leider nicht da ich den header schon in meiner struktur per include in die index hole und deshalb kriege ich eine fehlermeldung.

    Hat einer von euch vielleicht ne Idee?

    PHP-Code:
    <?php

        
    include ('functions.php');
        
        
        if (isset(
    $_POST['submit'])) {
            
            
    $error '';
            
            
                if (isset(
    $_POST['firstname']) && $_POST['firstname'] =='') {
                    
    $error .= 'Bitte Vornamen angeben!<br />';
                }
                
                if (isset(
    $_POST['lastname']) && $_POST['lastname'] =='') {
                    
    $error .= 'Bitte Nachnamen angeben!<br />';
                }
                
                if (isset(
    $_POST['email']) && $_POST['email'] =='') {
                    
    $error .= 'Bitte E-Mail Adresse angeben!<br />';
                }
                
                if (isset(
    $_POST['message']) && $_POST['message'] =='') {
                    
    $error .= 'Bitte Nachricht angeben!<br />';
                }



                
    $date date('d.m.Y');
                
    $fname $_POST['firstname'];
                
    $lname $_POST['lastname'];
                
    $mail $_POST['email'];
                
    $txt $_POST['message'];
            
                
    dbconnect();
                
                
    $writein "INSERT INTO input (firstname, lastname ,email ,message ,date) VALUES ('$fname', '$lname', '$mail', '$txt', '$date') ";
                                                                                                  

                
    $result    =    mysql_query$writein );
            
            if ( ! 
    $result )
            {
            die(
    "Konnte den Datensatz nicht eintragen: " mysql_error() );
            }
            
    }
            
    ?>
    das hier ist das Script das anschliessend aufgerufen werden soll
    PHP-Code:
    <?php

        
    include("functions.php");

        if ( isset( 
    $_REQUEST["page"] ) && $_REQUEST["page"] != "" )
        {
        
    $page    =    $_REQUEST["page"];
        }
        else
        {
        
    $page    =    1;
        }


        
    dbconnect();
        
        
    // Bestimmen der Einträge-Anzahl
        
    $all        =    howmany();
        
    $pageall    =    ceil($all 5);
      
        
    $offset    =    ($page 1) * 5;
        
        
        
    $takedb    =    "SELECT * FROM input ORDER BY id DESC LIMIT " $offset ", 5";
        
        
    $result    =    mysql_query($takedb);
        
        if (!
    $result)
        {
            die(
    "Konnte die Datens&auml;tze nicht auslesen");
        }

        
    $count    =    mysql_num_rows($result);
        
        
        
        
    ?>

            <?php
                
    // Schleife zur Ausgabe der DB Inhalte
                
    for ( $i=1$i <= $count$i++)
                {
                
    $listing mysql_fetch_array($result);
                
            
    ?>
            
            
    <table class="gb_form">
        <tr id="head">
            <td class="autor">
            <?php echo $listing['firstname'];?>
            <?php echo $listing['lastname'];?>
            </td>
            <td class="date">
            <?php echo $listing['date'];?>
            </td>
        </tr>
        <tr>
            <td class="message" colspan="2">
            <?php echo $listing['message'];?>
            </td>
        </tr>
    </table>

    <?php

    }

    ?>
    Für die masse von euch erschliesst sich sicher gleich was es werden soll aber ich erwähne es vielleicht trotzdem. Ich versuche ein Gästebuch mit Datenbank zu coden. Anfangs sieht man nur den Bereich in dem Der Beitrag eingereicht wird und mit dem click auf "eintragen" soll ein wechsel zur auflistung der einzelnen Einträge stattfinden ( und genau das klappt nicht ).

    Bin absolut kein crack und bin froh das es so schon fast hinhaut.

    Bin für jede hilfe dankbar

    greetz Ty


  • #2
    Ja. Datei umstellen oder Include statt header verwenden.
    --

    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


    --

    Kommentar


    • #3
      hmm...

      also
      PHP-Code:
      include 
      hatte ich auch versucht und funzt leider auch nicht. Kriege dann folgende fehlermeldung :

      Fatal error: Cannot redeclare dbconnect() (previously declared in C:\Server\xampp\htdocs\kitts\module\guestbook\func tions.php:9) in C:\Server\xampp\htdocs\kitts\module\guestbook\func tions.php on line 23

      Dem entnehme ich das php wohl ein problem mit der
      PHP-Code:
      function 
      hat denn die wird sowohl im ersten als auch im 2ten script aufgerufen. ganz schlau werde ich da allerdings auch nicht draus.

      ok, das mit dem code umstellen muss ich mir nochmal anschauen.

      Ich danke dir....

      cya Ty

      Kommentar


      • #4
        Cannot redeclare dbconnect()
        Steht doch alles drin.
        --

        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


        --

        Kommentar


        • #5
          Statt include besser require_once nehmen.

          Ich gehe meist wie folgt vor:

          if(!empty($_POST))
          {
          // Formular auswerten, bevor irgendein Header gesendet wird!
          // Connext zu Datenbank etc.
          }
          else
          {
          // Erst hier beginnt der HTML-Aufbau der Seite!
          // U.A. Formular darstellen
          }

          Kommentar

          Lädt...
          X