Problem mit der Übergabe von variablen mit der URL.

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

  • #16
    Hy

    Bin schon wieder etwas weiter !

    Das Problem lag an diesem Code überbleibsel aus vorhergegangen versuchen:
    Habe ihn jetzt so geändert

    PHP-Code:
    $eintraege_pro_seite 

    Jetzt bekomme ich auf der 2 Seite folgende Fehlermeldung


    Notice: Undefined variable: foo1 in C:\Dokumente und Einstellungen\vince\Desktop\xampp\htdocs\filterPro.php on line 194

    Notice: Undefined variable: foo2 in C:\Dokumente und Einstellungen\vince\Desktop\xampp\htdocs\filterPro.php on line 194

    Kommentar


    • #17
      Hast du ein mysql_error() eingefügt?

      Lass dir mal die Query ausgeben und poste die.

      Edit: Welches Zeile 194 ist, kannst du auch ruhig verraten...
      ich glaube

      Kommentar


      • #18
        Oh also MySQL liefert keinen fehler zumindest habe ich den code eingefügt und es hat sich nicht gändert

        Die zeile 194 ist folgende !


        PHP-Code:
        echo "  <a href=\"?seite=$b;&foo11=$foo1;&foo22=$foo2;\">$b</a> "


        Nochmals Sry

        Kommentar


        • #19
          logisch irgendwie... die $foos werden ja auch nur in einem Teil von deiner Verzweigung gesetzt. Schmeiß am Anfang
          PHP-Code:
          $foo1 $_POST["SucheCS"];
          $foo2 $_POST["SucheAS"];
          echo 
          $foo1 ;
          echo 
          $foo2 
          raus. Stattdessen im Link
          PHP-Code:
          echo "  <a href=\"?seite=$b&amp ;foo11=$CSystem& amp;foo22=$ASystem\">$b</a> "
          ohne die Leerzeichen.

          Und die Query ausgeben bitte... (das ist deine $abfrage )
          ich glaube

          Kommentar


          • #20
            Ja stimmt macht irgenwie sinn ^^

            Jetzt funtioniert alles besten Dank du hast mir sehr sehr sehr geholfen.
            Mal ne Frage am rande kannst du mir vieleicht einen tip geben wie ich den code etwas schlanker und übersichlicher bekomme jetzt konkret bei diesem code.

            Kommentar


            • #21
              Also, wenn ich ehrlich bin, wäre es am besten, ihn neu zu schreiben und dabei folgendes anders zu machen:

              Am Anfang einmal überprüfen
              PHP-Code:
              if ($post-Werte vorhanden) {
                 
              $vars aus $post;
              } else {
                 
              $vars was anderes;

              anstatt ständig zwischendrin.

              Außerdem besser auf die Namensgebung achten. "foo" ist kein guter Name.
              $CSystem = $_POST["SucheCS"];
              Wieso heißt das jetzt "CSystem", und nicht "SucheCS"?

              Ordnung halten. Du hast z.B. $counter1 und $counter2, die nirgendwo benutzt werden. Dann weg damit.

              Error Reporting beim Entwickeln immer voll aufdrehen.

              Vernünftig einrücken (Schleifen, if... else usw.)

              Außerdem musst du unbedingt was über mysql_real_escape_string bzw. über SQL Injection lesen und das anwenden - du übernimmst ungeprüft Benutzereingaben in deine Query.

              Ansonsten ist das mit der Übersichtlichkeit auch viel Übungssache, wird schon kommen

              Edit: nochwas
              if($CSystem == "" and $ASystem == "")

              {
              $SuchFeld1 = "CSALL" ;
              $SuchFeld2 = "ASALL" ;
              $SuchOption1 = "ALL" ;
              $SuchOption2 = "ALL" ;

              }

              elseif($CSystem == "ALL" and $ASystem == "ALL")

              {
              $SuchFeld1 = "CSALL" ;
              $SuchFeld2 = "ASALL" ;
              $SuchOption1 = "ALL" ;
              $SuchOption2 = "ALL" ;


              }
              ist natürlich Unsinn, bzw. redundant. In solche Verzweigungen gehört natürlich _nur_ das, was eben unterschiedlich ist.
              Zuletzt geändert von ministry; 16.03.2007, 17:54.
              ich glaube

              Kommentar


              • #22
                Ok , habe zwar nur die hälfte verstanden aber ich denke du hast recht mit dem neu schreiben.
                Ich will mich nochmal bei dir bedanken hast mir sehr geholfen.


                PS:

                Kannst du mir das nochmal erklären was du damit meinst.

                PHP-Code:
                if ($post-Werte vorhanden) {
                   
                $vars aus $post;
                } else {
                   
                $vars was anderes;

                Kommentar


                • #23
                  Naja, das soll heißen, dass du eben am besten am Anfang einmal überprüfst, wo deine Werte (also CSystem und ASystem z.B., auch $seite und $bilderproseite) herkommen - aus $_POST oder aus $_GET. Entsprechend belegst du dann deine Variablen. Dann hast du sie im Rest vom Script zur Verfügung, und musst dich nicht mehr drum kümmern wo sie herkamen (d.h., du musst nicht mittendrin noch einmal sowas
                  PHP-Code:
                  $eintraege_pro_seite $_POST["BilderAnzeige"];
                  IF(
                  $eintraege_pro_seite == "")

                  machen, sondern hast das schon am Anfang erledigt.
                  ich glaube

                  Kommentar


                  • #24
                    Ok alles klar Thx

                    Mal ne andere Frage ich beschäftige mich erst seit ein paar tagen mit php , was meinst du dafür war der code doch garnicht so schlecht oder ?

                    Hast du vieleicht eine gute seite über PHP

                    Kommentar


                    • #25
                      Naja, es gibt jedenfalls *noch schlimmeren*

                      Tutorial
                      Schattenbaum
                      Peters Anfängerseite
                      ich glaube

                      Kommentar


                      • #26
                        Alles klar gute antwort :-)

                        Also nochmals Danke und schönes Wochenende , man sieht sich bestimmt noch öfters^^

                        MFG

                        Vincent

                        Kommentar

                        Lädt...
                        X