Variablenübergabe

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

  • Variablenübergabe

    Hallo zusammen,

    ich versuche schon den ganzen Tag verzweifelt eine Variable auf eine andere Seite mitzunehmen.

    Der folgende Code holt sich Strassennamen aus der Datenbank und zeigt sie in einer Formularliste an.
    PHP-Code:
    $tab = "mietobjekt"; // Tabelle aus der die Daten ausgelesen werden sollen


    $connect1 = mysql_select_db( $dbname, $link );
    $sql = "SELECT strasse FROM $tab ";
    $res = mysql_query( $sql, $link );
    ?>

    <script language="JavaScript" type="text/JavaScript"> function 

    jumpMenu(targ,selObj,restore) 
    { eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
     if (restore) selObj.selectedIndex=0; } </script>

    <form class="maintxt" method = "post" action="index2.php?page=angebot">
      <select name="jump_menu" class="maintxt" onChange="jumpMenu('parent',this,0)">
    <option selected>Unsere aktuelle Angebote  >>  </option>
    <option><?
    while($row = mysql_fetch_row($res)){
        //urlencode($row[0]);
        echo "<option value='index2.php?page=angebot&strasse=$row[0]'>".$row[0]."</option>"; 
    }
    ?></option>

      </select>
    </form>
    Die sich daraufhin öffnende Seite sollte die Variable $row[0] erhalten, damit weitere Datenbankabfragen gestartet werden können.

    Der Code dieser Seite ist folgender:

    PHP-Code:
    <div id="contentmiddle">
    <table width="100%"  border="0" cellpadding="0" cellspacing="0">
      <tr>
        <td width="58%" height="267"><div id="flashimg">
        <?php
        $strasse 
    $HTTP_GET_VARS['row[0]'];
        
        

        <
    td width="42%"><div class="maintxt" id="maintxt">
          <
    p>
          <
    h3><?php echo $strasse ?> </h3>
          </p>
              <p>desc </p>
              <p><strong>Miete</strong>miete; </p>
              <p><strong>bezug</strong><br>
                <br>
                <br>
              </p>
              <h3>&nbsp;</h3>
                </div></td>
      </tr>
    </table>
    <!--Ende Contenmiddle Content-->
    </div>
    Aber es geht einfach nicht

    Gruss Boris
    Zuletzt geändert von derbo; 08.07.2005, 14:22.

  • #2
    1. bitte erstmal den code umbrechen.
    2. der fehler ist so banal, dass du ihn selbst herausfinden solltest. mach einfach mal sowas wie:
    PHP-Code:
    <pre><? print_r($_GET); ?></pre>

    Kommentar


    • #3
      Super, du hast meine Denkblokade gelöst.

      Kommentar


      • #4
        und du nur die hälfte meiner antwort gelesen.

        Kommentar


        • #5
          Weiterhin Probleme

          Hallo zusammen,
          ich stosse leider momentan an meine Programmiergrenzen.
          Folgendes Problem bekomme ich einfach nicht geregelt.

          Ich starte eine Session mit folgendem Aufruf:
          PHP-Code:
          <?php  
          session_start
          ();
          session_name("angebot");
          $_SESSION['strasse']  = $strasse;
          $_SESSION['beschreibung'] = $beschreibung;
          $_SESSION['miete'] = $miete;
          $_SESSION['nebenkosten'] = $nebenkosten;
          $_SESSION['heizkosten'] = $heizkosten;
          $_SESSION['verkauf'] = $verkauf;
          $_SESSION['bezug'] = $bezug;
          $_SESSION['bild'] = $bild;
          ?>
          Die über GET gesendeten Variablen werden folgendermaßen an eine neue Seite gesendete.
          PHP-Code:
          <form class="maintxt" method = "post" action="index2.php?page=angebot">
            <select name="jump_menu" class="maintxt" onChange="jumpMenu('parent',this,0)">
          <option selected>Unsere aktuelle Angebote  >>  </option>
          <option><?
          while($row = mysql_fetch_row($res)){
              //urlencode($row[0]);
              echo "<option value='index2.php?page=angebot&strasse=$row[0]'>".$row[0]."</option>"; 
          }
          ?></option>

            </select>
          </form>
          Beim ersten Aufruf von angebot.php werden alle Variablen korrekt dargestellt und mit dem richtigen Datenbank-Content ausgestattet.

          Nun möchte ich aber Blättern und somit dazugehörige Bilder, die aus einem Ordner ausgelesen werden darstellen.

          Da soll so ablaufen.
          PHP-Code:
            <div id="picdesc" style="position:absolute; width:175px; height:37px; z-index:2; left: 447px; top: 168px;">
              
                  <?php if ($i == 0) { ?>
                  <img src="img/etc/arrow_back_grey.gif" width="29" height="32" border="0"> <?php } else { ?>
                  <a href="<?php $_SERVER['PHP_SELF']?>?arr_id=<?php echo $i-1;?>&page=angebot&$_SESSION">
                  <img src="img/etc/arrow_back.gif" width="29" height="32" border="0"></a> 
                  <?php }

                  
          //echo $filenames[$i];
                  
          echo $i+1;
                  echo 
          "/";
                  echo 
          count($filenames); ?>

                  
              <?php if ($i+== count($filenames)) { ?>
                  <img src="img/etc/arrow_forward_grey.gif" width="29" height="32" border="0"> <?php } else { ?>
                  <a href="<?php $_SERVER['PHP_SELF']?>?arr_id=<?php echo $i+1;?>&page=angebot&$_SESSION>
                  <img src="img/etc/arrow_forward.gif" width="29" height="32" border="0"></a> 
                  <?php ?>
               </div>
          Die Session-Variablen werden aber nicht übergeben

          Was mache ich falsch ?

          Gruss Boris

          Kommentar


          • #6
            Re: Weiterhin Probleme

            Original geschrieben von derbo
            PHP-Code:
            <?php if ($i == 0) { ?>
                    <img src="img/etc/arrow_back_grey.gif" width="29" height="32" border="0"> <?php } else { ?>
                    <a href="<?php $_SERVER['PHP_SELF']?>?arr_id=<?php echo $i-1;?>&page=angebot&$_SESSION">
            das ist in mehrfacher hinsicht absoluter unfug.

            - du befindest dich an der stelle, wo du &$_SESSION stehen hast, nicht mehr im <?php..?>-bereich, also wird da auch nichts ersetzt, sondern lediglich der text &$_SESSION ausgegeben.
            - du kannst ein array wie $_SESSION auch dann nicht einfach so per echo oder print ausgeben, wenn du dich im PHP-bereich befindest.
            - beim arbeiten mit sessions übergibt man nicht die sessiondaten per URL, sondern lediglich die session-id.


            ich würde vorschlagen, du informierst dich erst mal ein bisschen zum thema sessions, denn da scheinst du noch kaum ahnung zu haben.
            http://tut.php-q.net/sessions.html
            http://php-faq.de/ch/ch-version4_session.html
            http://www.php.net/manual/de/ref.session.php
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              So werden zwar für jeden Link , die Session-IDs übergeben, trotzdem bleiben die Session-Variablen leer.

              PHP-Code:
                <div id="picdesc" style="position:absolute; width:175px; height:37px; z-index:2; left: 447px; top: 168px;">
                  
                      <?php if ($i == 0) { ?>
                      <img src="img/etc/arrow_back_grey.gif" width="29" height="32" border="0"> <?php } else { ?>
                      <a href="<?php $_SERVER['PHP_SELF']?>?arr_id=<?php echo $i-1;?>&page=angebot&<?php echo session_id() ?>">
                      <img src="img/etc/arrow_back.gif" width="29" height="32" border="0"></a> 
                      <?php }

                      
              //echo $filenames[$i];
                      
              echo $i+1;
                      echo 
              "/";
                      echo 
              count($filenames); ?>

                      
                  <?php if ($i+== count($filenames)) { ?>
                      <img src="img/etc/arrow_forward_grey.gif" width="29" height="32" border="0"> <?php } else { ?>
                      <a href="<?php $_SERVER['PHP_SELF']?>?arr_id=<?php echo $i+1;?>&page=angebot&<?php echo session_id() ?>">
                      <img src="img/etc/arrow_forward.gif" width="29" height="32" border="0"></a> 
                      <?php ?>
                   </div
              Trotzdem danke für die Links

              Kommentar


              • #8
                hint:

                Code:
                richtig.php?sid=1234567890
                falsch.php?1234567890
                wobei "sid" durch session_name() bestimmt wird.

                Kommentar


                • #9
                  penizillin, du bist der grösste. Deine kleinen Denkanstösse haben mir jetzt schon zum zweiten mal sehr viel geholfen.

                  Thx Boris

                  Kommentar

                  Lädt...
                  X