Ein PHP-Javascript-Popup-Problem ...

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

  • Ein PHP-Javascript-Popup-Problem ...

    Mal schauen, ob die "Experten" hier sich wieder unterfordert fühlen oder ob sie diesmal helfen können.

    Folgende Ausgangsituation:

    Es existiert eine Tabelle mit Einträgen. Der Nutzer sieht immer nur alle Einträge zu einem Jahr (also niemals alle Einträge oder nur einzelne). Um jetzt Einträge aus anderen Jahren sehen zu können, klickt der Nutzer auf einen Button, es öffnet sich ein Popup, dort klickt er auf das gewünschte Jahr, diese Zahl wird in eine Session geschrieben, das Hauptfenster wird neu geladen und das Popup wieder geschlossen.

    Ich habe hier folgende Javascript-Funktion gefunden, die das Hauptfenster neu lädt und das Popup automatisch schließt:
    Code:
    function cl_refresh()
    {
    	opener.location.reload();
    	if (this != null)
    	if (!this.closed)
    	this.close();
    }
    Die folgenden Zeilen lesen die Jahre aus und stellen Sie als Link dar:
    PHP-Code:
    Einfach auf das gew&uuml;nschte Jahr klicken. Die Daten werden im Hauptfenster umgehend angezeigt.<br /><br />
    <?
    $argStrWechselJahr = "";
    $dbErg = $db->sql("SELECT YEAR(datum) AS datum FROM tabelle ORDER BY datum ASC");
    while ($dbStrRow = mysql_fetch_array($dbErg))
    {
        if($argStrWechselJahr!=$dbStrRow['datum'])
        {
            $argStrWechselJahr = $dbStrRow['datum'];
            echo '<a class="navi" href="'.$PHP_SELF.'?year='.$dbStrRow['datum'].'" onClick="javascript:cl_refresh();"><b>'.$dbStrRow['datum'].'</b><br />';
        }
    }
    ?>
    Mein Problem ist jetzt: Wie bekomme ich am besten den Wort aus "year" in die Session beim Aufrufen des Javascriptes? Ist es überhaupt möglich, PHP-Befehle in ein Javascript zu integrieren? Wenn nein, was könnte man stattdessen machen?

    Danke im Voraus
    Innuendo

  • #2
    Re: Ein PHP-Javascript-Popup-Problem ...

    Original geschrieben von Innuendo
    Mal schauen, ob die "Experten" hier sich wieder unterfordert fühlen oder ob sie diesmal helfen können.
    lese ich da etwa ein wenig sarkasmus heraus ...?

    wenn du ernsthaft folgende frage stellen willst
    Mein Problem ist jetzt: Wie bekomme ich am besten den Wort aus "year" in die Session beim Aufrufen des Javascriptes? Ist es überhaupt möglich, PHP-Befehle in ein Javascript zu integrieren? Wenn nein, was könnte man stattdessen machen?
    musst du dich über eben diese reaktion auch nicht wundern.

    "php-befehle in javascript integrieren" ist natürlich nicht möglich, und wegen des unterschiedlichen ortes der ausführung, php serverseitig/javascript clientseitig, auch vollkommen sinnfrei.

    allerdings kannst du natürlich gerne mit php javascript-code ausgeben, natürlich z.b. auch eine variablendefinition ...
    oder andersherum mit javascript den URL eines php-scriptes aufrufen, z.b. mit GET-parametern ...


    aber ob experte oder nicht, eigentlich verdienst du für diese frage nur eins:
    auf die suchfunktion verwiesen zu werden, das thema haben wir hier nämlich schon mehrmals behandelt.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Die entsprechenden Personen wissen schon, wer gemeint ist. Jedenfalls sehe ich es nicht ein, mich wie ein Idiot behandeln zu lassen, nur weil ich ein Problem nicht gleich löse oder verstehe.

      Zurück zum eigentlichen Thema. Ich habe es jetzt so gelöst:

      PHP-Code:
          <span class="ntext" style="color:#000000">
              <?
              if(!isset($submit))
              {
                  ?>
                  <b>Bitte ausw&auml;hlen</b><br /><br />
                  <form method="post" action="<?=$PHP_SELF;?>">
                      <select name="argStrYearChosen" size="1" class="Eingabe">
                          <option value="">Bitte w&auml;hlen ...</option>
                          <?
                          $argStrWechselJahr = "";
                          $dbErg = $db->sql("SELECT YEAR(datum) AS datum FROM tabelle ORDER BY datum ASC");
                          while ($dbStrRow = mysql_fetch_array($dbErg))
                          {
                              if($argStrWechselJahr!=$dbStrRow['datum'])
                              {
                                  $argStrWechselJahr = $dbStrRow['datum'];
                                  ?>
                                  <option value="<?=$dbStrRow['datum'];?>"><?=$dbStrRow['datum'];?></option>
                                  <?
                              }
                          }
                          ?>
                      </select><br />
                      <input type="submit" name="submit" value="Ausw&auml;hlen" class="Button"></input>
                  </form>
                  <?
              }
              else
              {
                  $_SESSION['year'] = $_POST['argStrYearChosen'];
                  ?>
                  Einen Moment bitte ... Die Daten werden geladen ...<br />
                  <script language="javascript" type="text/javascript">
                  <!--
                      opener.location.reload();
                      if (this != null)
                      if (!this.closed)
                      this.close();
                  //-->
                  </script>
                  <?
              }
              ?>
          </span>

      Kommentar


      • #4
        bist du sicher dass das klappt??

        Klammer man mit "{}" nicht nur nachfolgende PHP-codeblöcke ein?
        *unschuldigschau* (fehlends grundwissen
        Die Musikreview Seite

        hi, i'm a signature virus. copy me into your signature to help me spread.

        Kommentar


        • #5
          Original geschrieben von Innuendo
          Die entsprechenden Personen wissen schon, wer gemeint ist.
          Trotzdem soltest du die Netiquette beachten, und freundlich sein, dann sind andere auch freundlich zu dir!



          Original geschrieben von Innuendo

          Jedenfalls sehe ich es nicht ein, mich wie ein Idiot behandeln zu lassen, nur weil ich ein Problem nicht gleich löse oder verstehe.
          Tut auch niemand!! Es sei denn jemand will einen kompletten code haben!
          Die Musikreview Seite

          hi, i'm a signature virus. copy me into your signature to help me spread.

          Kommentar

          Lädt...
          X