Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Feld aus Datenbank richtig übergeben

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Feld aus Datenbank richtig übergeben

    Hallo,

    erstmal ein Stück code:

    PHP-Code:
    <?php

        
    include('form.class.php');

    include(
    'db.php');


    $abfrage "SELECT ID FROM check";
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_object($ergebnis))
       

        

        
    /*
            index               => Modul
            360                 => ID
            start               => Tracking-ID kann auch '' sein
            wechseln-green      => Style
        */

        
    $p_id 69916;

        
    $form = new form('index'$p_id'start''blue');

        
    /*
            Keine neue Seite oeffnen sondern lokal einen
            IFRAME mit 615 Pixel Breite anzeigen ab dem Abschluss
        */
        
    $form->set_signup_url('local'615);


    ich connecte zu meiner Datenbank per db.php -> das geht alles

    ich lese mit folg. Code die ID aus meiner Datenbank (id from check) die ich haben möchte:
    PHP-Code:
    $abfrage "SELECT ID FROM check";
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_object($ergebnis)) 
    -> das geht auch

    eine einfache Ausgabe der ID klappt auch mit dem folg. Code
    PHP-Code:
    {
       echo 
    "$row->ID <br>";
       } 
    nun würde ich aber gerne praktisch diese Zeile aus meinem Script:
    PHP-Code:
     $form = new form('index'$p_id'start''blue'); 
    wie folgt ändern:

    $form = new form('index', HIER SOLL DIE ID AUS DER DATENBANK EINGEFÜGT WERDEN, 'start', 'blue');

    ich möchte die folg. Zeile löschen: $p_id = 69916; und eben mit meiner ID aus der Datenbank die $form Zeile wie oben angegeben füllen.


    Ist das möglich, ich habe schon rumprobiert aber ich bekomme es leider nicht hin, wäre klasse wenn mir jemand helfen könnte.

    grüße
    sl

  • #2
    Wie sehen denn deine Versuche aus? Ehrlich gesagt sehe ich das Problem nicht. Es ist doch alles da.

    Kommentar


    • #3
      wenn ich diese Zeile: $form = new form('index', $p_id, 'start', 'blue');

      wie folgt änder: $form = new form('index', $row->ID, 'start', 'blue');

      dann erhalte ich zwar die Seite angezeigt aber die Ausgabe ist total Fehlerhaft und es wird folg. Error angezeigt:

      Notice: Trying to get property of non-object in C:\xampp\htdocs\iso\check.php on line 109

      Line 109 ist:
      $form = new form('index', $row->ID, 'start', 'blue');

      Kommentar


      • #4
        Zitat von slsl Beitrag anzeigen
        Notice: Trying to get property of non-object in C:\xampp\htdocs\iso\check.php on line 109
        Dann enthält $row an der Stelle nicht das, was du annimmst.

        Kommentar


        • #5
          aber wenn ich folg. Code verwende:

          PHP-Code:
          <?php

              
          include('form.class.php');

          include(
          'db.php');


          $abfrage "SELECT ID FROM check";
          $ergebnis mysql_query($abfrage);
          while(
          $row mysql_fetch_object($ergebnis))
             
           {
             echo 
          "$row->ID <br>";
             }

              

              
          /*
                  index               => Modul
                  360                 => P-ID
                  start               => Tracking-ID kann auch '' sein
                  wechseln-green      => Style
              */

              
          $p_id 69916;

              
          $form = new form('index'$p_id'start''blue');

              
          /*
                  Keine neue Seite oeffnen sondern lokal einen
                  IFRAME mit 615 Pixel Breite anzeigen ab dem Abschluss
          zeigt er mir ja im Browser in der Ausgabe meine ID an die ich haben will.... mit diesem Code:
          PHP-Code:
          {
             echo 
          "$row->ID <br>";
             } 
          warum kann ich dann nicht die ID die ja ausgegeben wird in dieser Line durch $row->ID einfügen bzw. liefert nicht diese ID ?

          $form = new form('index', $partner_id, 'start', 'blue');
          $form = new form('index', $row->ID, 'start', 'blue'); <--In dieser Line

          Kommentar


          • #6
            Zitat von slsl Beitrag anzeigen
            warum kann ich dann nicht die ID die ja ausgegeben wird in dieser Line durch $row->ID einfügen bzw. liefert nicht diese ID ?
            Weil $row zu dem Zeitpunkt, wo du darauf zugreifst, gar kein Datensatz-Objekt mehr ist, sondern false.

            Sowas sollte dir eigentlich von selber klar sein, wenn du dir über die Funktionsweise von Code mal etwas mehr Gedanken machen würdest, anstatt ihn nur von irgendwoher per Copy&Paste zu übernehmen!

            Die while-Schleife läuft nur so lange, wie irgendeine Bedingung erfüllt ist.
            $row = mysql_fetch_object($ergebnis) erfüllt diese Bedingung, so lange es noch Datensätze abzuholen gibt.
            Nach dem Abholen des letzten Datensatzes liefern die mysql_fetch-Funktionen aber false - damit endet auch die Schleife, das ist ja auch gewolltes Verhalten.

            Allerdings ist der Wert von $row jetzt nur noch false, und das hat keine Eigenschaften wie id o.ä., auf die du jetzt noch zugreifen könntest.

            Wenn du nur einen Datensatz abfragen willst, dann brauchst du keine Schleife.
            Wenn du das Erstellen eines neuen form-Objektes für mehrere Datensätze machen willst - dann packe es mit in die Schleife hinein.

            Und vor weiteren solchen Fragen, beschäftige dich bitte etwas mehr mit den Grundlagen. http://www.php.de/php-einsteiger/489...nsammlung.html

            Kommentar


            • #7
              Habe es nun hinbekommen wie folgt:
              PHP-Code:
              $details "SELECT ID FROM check";
              $SQ_query mysql_query($details);
              $detail mysql_fetch_array($SQ_query);
              $ID $detail['ID']; 
              echo $ID;

              grüße und danke trotzdem

              Kommentar

              Lädt...
              X