anklick einer Tabellenzeile und bearbeitung

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

  • anklick einer Tabellenzeile und bearbeitung


    Guten Tag

    Ich habe eine Tabelle in der ich total viele Zeilen habe. Ich möchte ganz einfach nur,dass ich beim Klick einer Zeile zu einem anderen Fenster weitergeleitet werde und dort genau die Daten ,aus der Reihe, bearbeiten kann, die ich angeklickt habe.

  • #2
    guten Abend

    dafür kannst du den onclick-Event im <tr> unterbringen. Dort würde ich eine JavaScript-Funktion aufrufen, welche das Fenster öffnet und dort die Daten anzeigt. Beim Aufruf der JS-Funktion mußt du halt noch die ID oder so des Datensatzes übergeben, welche du ja mit PHP reinechoen kannst.

    Abend und einen schönen dazu noch. Bis morgen früh. Gute Nacht

    Kommentar


    • #3
      Der Algorithmus ist klar kannst du mir ein rudimentäres Beispiel schicken?

      Ich mein ich bin ein PHP newbie ich weiss nicht was möglich ist und was nicht?


      Wie lange arbeitest du schon mit PHP?

      Kommentar


      • #4
        Hi, ich bin seit ca. zwei Jahren dabei, also PHP meine ich.
        Hier mal ein kleines Skript:
        Code:
        <script>
        function dataset_show(nr) {
        	window.open("gesamter_datensatz_edit.php?id="+nr, "fenster", "width=800,height=600,scrollbars=yes");
        	return;
        	}
        </script>
        
        [...]
        
        <table>
        <? 
        // irgendwoher werden wohl die Daten kommen, vermutlich eine DB ->
        // deshalb wird hier einfach mal von einem erfolgreichen Query ausgegangen
        $result=mysql_query("select * from tabelle where blablabla");
        
        while($daten=mysql_fetch_array($result)) { ?>
        	<tr onclick="dataset_show( <? echo $daten['id']; ?> )">
        		<td><? echo $daten['feldname1']." ".$daten['feldname2']; ?></td>
        	</tr>
        <?	} ?>
        </table>
        in der <td>-Zeile wird halt ein Überblick, Auszug oder so vom Datensatz ausgegeben. Beim <tr>-onclick-Event wird dann für jede neue Tabellenreihe (entspricht auch DB-Datensatz) die DB-DatensatzID rausgeschrieben. Bin davon ausgegangen, daß das DB-Feld 'id' heisst. Ja, soweit so gut, vielleicht reicht dir das ja schon mal als Denkanstoß.
        Bis dann

        Kommentar


        • #5
          Danke
          Das wird mir bestimmt weiterhelfen ,ich setze mich heute Abend mal dran und programmiere das ganze mal nach

          Kann man nicht JavaScript durch PHP ersetzen. Ich mein ich findes es total schade,dass man zwei Scriptsprachen miteinander verknüpfen muss!Mann müßte dass gleiche wie in JavaScript auch in PHP machen können oder!?
          Denn PHP wird ja nicht umsonst Scriptsprache genannt,dann sollte das auch alles können was JavaScript auch kann.
          Kann es aber nicht es kann nur einen serverseitigen zugriff und keinen clientseitigen.
          stimmts?

          Kommentar


          • #6
            genau

            Ja, voll und ganz richtig erkannt. PHP ist Skript für Server, JS für Browser. Deshalb Zusammenarbeit sehr hilfreich!

            Kommentar


            • #7

              Hi


              Kannst du mir sage wie ich das bei meiner Funktion ,für die Tabellenausgabe machen kann?
              Hier ist meine Funktion diese Tabellenausgabe ist total gut die passt sich der Seite an und nutzt, den ganzen Browser-Fenster oder Frame für die Tabellenausgabe.Ich will diesen script nicht in die Tonne kloppen !Villeicht kannst du es ja auch gebrauchen?:

              function tab_out($result)
              {
              //Ausgabe einer Tabelle die sich an die größe der Seite anpasst
              $anz=MYSQL_NUM_FIELDS($result);
              $breit=100/$anz."%";
              $num = MYSQL_NUM_ROWS($result);
              echo "<table width=100% border=0 cellpadding='0' cellspacing='2'style='text-align:left;font-size:8pt;font-family:arial;'>";
              echo "<tr bgcolor=#D0D0D0>";
              for ($i=0;$i<$anz;$i++)
              {
              echo "<th width='$breit'><font size='4'>";
              echo MYSQL_FIELD_NAME($result,$i);
              echo "</font></th>";
              }
              echo "</tr>";
              for ($j = 0;$j < $num;$j++)
              {
              $row = MYSQL_FETCH_ARRAY($result);
              echo "<tr bgcolor=#D0DFAF>";
              for ($k=0;$k<$anz;$k++)
              {
              $field=MYSQL_FIELD_NAME($result,$k);
              echo "<td width='$breit'><font size='4'> $row[$field]</font> </td>";
              }
              echo "<tr>";
              echo "</tr>";
              }
              echo "</table>";
              }



              Bis dann!

              Kommentar


              • #8
                Schon gut ich habe es alleine herausgefunden
                Danke für deine Hilfe
                Wenn du mal Hilfe brauchst frage mich ich versuche dir behilflich zu sein.



                Kennst du dich eigentlich mit ipchains(Firewalling) in Linux aus?

                Kommentar

                Lädt...
                X