kölir: mysql disconnect

hallöle,

wenn ich mehrer abfragen und co habe und if schleifen usw.

und habe dadurch eine betsehende mysql verbindung und in einer bestimmten schleife ird dann per header location weitergeleitet, muss ich dann vorher in dieser schleife noch die mysql verbindung beenden oder wird der rest der schleifen mitbetrachtet und es reicht, wenn ich die mysql verbindung auf der gleichen ebene beende wie ich eröffne?

hoffe ihr vertseht was ich mein...

grüßchen

  1. Beispiel:

    if (diesundjenes) {
      mysql_connect
      abfrage
      diesundjenes
      abfrage
      if (das) {
        header("Location: woanders");
        }
      nochwas
      mysql_disconnect
      }

    Wird das msql_diconnect im Falle von 'das', wo dann die Location geändert wird noch beachtet oder sollte ich dann vor den header in die 'das'-if-schleife auch noch ein mysql_disconnect setzten?

    1. Moin!

      Wird das msql_diconnect im Falle von 'das', wo dann die Location geändert wird noch beachtet oder sollte ich dann vor den header in die 'das'-if-schleife auch noch ein mysql_disconnect setzten?

      Überlege dir mal, was die Funktion header() bewirkt. Einen Skriptabbruch? Eher nicht.

      - Sven Rautenberg

      --
      "Love your nation - respect the others."
  2. Setz einfach hinter jede header-Weiterleitung ein

    exit;

    dann kannst Du dir disconnect und Gedanken über das, was dahinter kommt, sparen..

  3. hallöle,

    wenn ich mehrer abfragen und co habe und if schleifen usw.

    und habe dadurch eine betsehende mysql verbindung und in einer bestimmten schleife ird dann per header location weitergeleitet, muss ich dann vorher in dieser schleife noch die mysql verbindung beenden oder wird der rest der schleifen mitbetrachtet und es reicht, wenn ich die mysql verbindung auf der gleichen ebene beende wie ich eröffne?

    hoffe ihr vertseht was ich mein...

    grüßchen

    Hi,

    Du solltest die Verbindung beenden, wenn du sie nicht mehr brauchst.
    Ich arbeite bei solchen Aufgabenbereichen allerdings auch gerne mit Perl-DBI, da es hier eine gute Möglichkeit gibt Handles zu cachen.
    Ein disconnect ist damit nicht mehr notwendig.
    Müsste es aber in PHP eigentlich auch irgendwo geben.

    1. danke für den tipp aber oich find nigges...

      vllt jemand anderes??

      1. hi,

        danke für den tipp aber oich find nigges...

        Könntest du vielleicht mal konkret sagen, was dir jetzt, nach dem Lesen und Überdenken der bisherigen Antworten, noch Probleme macht?

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
  4. Hallo kölir,

    wenn ich mehrer abfragen und co habe und if schleifen usw.

    und habe dadurch eine betsehende mysql verbindung und in einer bestimmten schleife ird dann per header location weitergeleitet, muss ich dann vorher in dieser schleife noch die mysql verbindung beenden oder wird der rest der schleifen mitbetrachtet und es reicht, wenn ich die mysql verbindung auf der gleichen ebene beende wie ich eröffne?

    Ich verstehe wirklich nicht ganz, wo dein Problem liegt. Willst du, das ich dir sage, dass offene Verbindungen zu einer MySQL-Datenbank nach dem Ende eines PHP-Scriptes automatisch geschlossen werden? (Siehe http://www.php.net/language.types.resource#language.types.resource.self-destruct).

    Aber vielleicht solltest du dir nochmal den Hinweis von Sven zu Herzen nehmen. Nach einem Aufruf von header() wird das Script nämlich nicht abgebrochen sondern normal weiter ausgeführt.

    Schöne Grüße,

    Johannes