include - header (ja ich weiß....)

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

  • include - header (ja ich weiß....)

    okay, hab mir gestern nen gästebucg gecodet...hat auch alles wunderbar funktioniert mit include und dem header, allerdings wollte ich noch eine function einfügen (smilies generieren), ab da ging nichts mehr...

    zum Problem: ich include mir eine function.inc.php in der ich die function habe, zum verbinden mit der datenbank

    das sieht dann so aus:

    PHP-Code:
    <?php
      
    include("function.inc.php");

      
    /* Eintrag in das Gästebuch */
      
      /* Prüfen ob Seite schon aufgerufen wurde */
     
      
    if ( isset($_REQUEST["do"]) && $_REQUEST["do"] == "insert" )
      {
          
          
    header("Location: index.php");
          die;
        
      }
    ?>

    //hier kommt das html formular
    das include file sieht so aus:

    PHP-Code:
    <?php
    function mysqlconnect()
    {
      
    $status mysql_connect("localhost","root","hughes");     
      
    $status mysql_select_db("guestbook");
    }
    ?>
    hab mir auch den warning.... durchgelesen...und mir is klar das keine ausgabe da sein darf

    und bevor die header eingebunden wird, passiert nur eine ausgabe. wenn ein fehler auftritt (passiert mit if - anweißungen) - wenn alles glatt läuft funzt alles also (sieht man auch, das die daten in die datenbank eingegeben werden) ...

    frage: hab ich doch iirgendwo nen leerzeichen oder ne ausgabe ??
    Zuletzt geändert von unforgiven; 28.05.2006, 13:39.

  • #2
    und bevor die header eingebunden wird, passiert nur eine ausgabe. wenn ein fehler auftritt (passiert mit if - anweißungen) - wenn alles glatt läuft funzt alles also (sieht man auch, das die daten in die datenbank eingegeben werden) ...
    Interpunktation ist so ne sache, aber wenn ich das ganze richtig interpretiere, meinst du:

    ausgabe nur, wenn ein fehler auftritt
    -> also wundert uns auch der Header-Fehler nicht.
    wenn alles glatt läuft (also kein fehler auftritt), funzt alles
    -> wunderbar!

    Was genau wundert dich jetzt?

    frage: hab ich doch iirgendwo nen leerzeichen oder ne ausgabe ??
    Ich seh keine, allerdings ist das sicher auch nicht der korrekte code. Und wieso meinst du überhaupt, dass es nen leerzeichen gibt? Ist doch alles wie erwartet.

    Kommentar


    • #3
      na ja...

      des is ja der eintrag in die datenbank etc. ...und wenn jetzt irgendwelche fehler auftreten wird das script mit die("fehler"); abgebrochen; tritt kein fehler auf; wird nichts ausgegeben...

      läuft alles ohne fehler; dann wird zwar es in die datenbank reingeschrieben; aber der wechsel funktioniert nicht, schreibt ich die mysql connect function in die datei rein, funktioniert es auch

      mh, ich pack mal den ganzen code hier rein (als rar file)

      files

      also addentry.php is die hauptdatei; un function.inc.php is die datei die includet wird
      Zuletzt geändert von unforgiven; 28.05.2006, 18:37.

      Kommentar


      • #4
        nene, erklär mal bitte genau, was sache ist. keinen bock ellenlange codes zu lesen. auszüge reichen vollkommen.

        Kommentar


        • #5
          'kay

          die addentry.php wird aufgerufen, das formular wird ausgefüllt und wieder an sich selbst geschickt; jetzt wird geprüft ob die seite schon aufgerufen wird...wenn ja, werden die daten in die datenbank reingeschrieben; zuvor wird die function.inc.php eingebunden und daraus die function zum verbinden zur mysql rausgeholt und ausgeführt; falls fehler auftreten (wenn zB die query nicht ausgeführt wird, oder die datenbank nicht erreicht wird, werden fehler ausgegeben (alles in der addentry.php datei)

          wenn alles geklappt hat, soll per header(Location: index.php) auf die hauptdatei zurückverwießen und das script stirbt per die;

          wichtige codeausschnitte:

          PHP-Code:
          <?php

            
          /* Eintrag in das Gästebuch */
            
            /* Prüfen ob Seite schon aufgerufen wurde */
           
            
          if ( isset($_REQUEST["do"]) && $_REQUEST["do"] == "insert" )
            {
               include(
          "function.inc.php");

               
          header("Location: index.php");
               die;
            }
          ?>
          (den eintrag hab ich rausgelassen)

          und

          PHP-Code:
          <?php 
          function mysqlconnect()
          {
            
          $status mysql_connect("localhost","root","hughes");     
            
          $status mysql_select_db("guestbook");
          }
          ?>
          Zuletzt geändert von unforgiven; 28.05.2006, 19:06.

          Kommentar


          • #6
            Du hast, meiner Meinung nach, wenn nicht alles täuscht, es könnte sein, und das ist der einzige (un)sichtbare Fehler:
            PHP-Code:
            <?php
            function mysqlconnect()
            {
              
            $status mysql_connect("localhost","*****","*****");     
              
            $status mysql_select_db("guestbook");
            }
            ?>[b]SPACE[/b]
            ergänzen möchte ich noch, dass dein mysql-Passwort "biene" heisst, oder?
            Zuletzt geändert von muh (newbie); 28.05.2006, 19:28.

            Kommentar


            • #7
              verdammte sch*** das wars......




              un des pw is wirklich ein anderes

              Kommentar


              • #8
                ... oder ein BOM?

                Location-Header ist übrigens besser mit absolutem URI.

                Kommentar


                • #9
                  ja, is klar, das es besser is mit absolutem URL; aber is ja erst ma nur zu testzwecke

                  Kommentar

                  Lädt...
                  X