tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
541
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Larnhof Larnhof ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    40
    Guten Morgen liebe Leute!

    Ich möchte eine Variable in einer Session übergeben was auch soweit gut funktioniert.
    Möchte zum Bsp. die Variable $id übergeben und und in der nächsten seite aufrufen und damit weiter arbeiten nur ist meine problem das ich immer die id des letzten Datensatzes bekomme.
    Woran könnte es liegen?

    Seite 1:
    PHP-Code:
    <?php

    session_start
    ();
    require(
    "logintemplate.php");
    require(
    "index.php");



    echo 
    "<h1>Benutzerverwaltung</h1>\n";


    $sql "SELECT ID, Name, adminrechte, EMail FROM users ORDER BY ID";
    $erg = @mysql_query($sql);
        if(
    $erg
        {
            if(
    mysql_num_rows($erg) <= 0
            {
            echo 
    "<p>Zur Zeit stehen keine Personen zur Verf&uuml;gung.</p>";
               
            } 
            else 
            {
            echo 
    "<h1>Personendaten</h1>\n";
            echo 
    "<table border=3 bgcolor='#FFCC33'>\n";
            echo 
    "<tr>\n";
            for(
    $i=0$i<mysql_num_fields($erg); $i++) 
                {
                  
    $feld mysql_field_name($erg$i);
                  echo 
    "<th>"ucfirst($feld) . "</th>\n";
                }
            echo 
    "<th>Bearbeiten</th>\n";
            echo 
    "</tr>\n";
            while(
    $row mysql_fetch_row($erg)) 
                {

                  echo 
    "<tr>\n";
                  echo 
    "<td>$row[0]</td>\n";
                  echo 
    "<td>$row[1]</td>\n";
                  echo 
    "<td>$row[2]</td>\n";
                  echo 
    "<td><a href=\"mailto:$row[3]\">$row[3]</a></td>\n";
                  echo 
    "<td>";
                 
                
                    

                    
    // Session Variablen setzen
                    
    $_SESSION['ID'] = $row[0];
                    
    $_SESSION['Name'] = $row[1];
                    
    $_SESSION['adminrechte'] = $row[2];
                    
    $_SESSION['EMail'] = $row[3];
                    
                    
    ?><a href="editkontakt.php<?php session::showLink(true); ?>">&Auml;ndern</a><br>


                  <a href="delkontakt.php<?php session::showLink(true); ?>">L&ouml;schen</a><?php
                  
    echo "</td>\n";
                  echo 
    "</tr>\n";
                }
            echo 
    "</table><p>\n";
            echo 
    "<p>\n";
        
            } 
        } 
    else
      echo 
    "<h5>Es konnten keine Datens&auml;tze gefunden werden.</h5>\n";
      
    @
    mysql_close();


    ?>
    Seite 2
    PHP-Code:
    <?php

    session_start
    ();
     require(
    "logintemplate.php");
     require(
    "index.php");
     

    $id $_SESSION['ID'];


    $sql "DELETE FROM users WHERE ID = $id;";

    if(@
    mysql_query($sql)) {
      echo 
    "<h1>L&ouml;schung erfolgreich</h1>\n";
      echo 
    "<p>Die Daten mit der <b>ID $id</b> wurden entg&uuml;ltig gel&ouml;scht.</p><hr />";
      
    ?><a href="new3.php<?php session::showLink(true); ?>">Zurück zu Auswahl</a></p><?php
    }
    else {
      echo 
    "<p>Der Datensatz konnte leider nicht gel&ouml;scht werden.<br />";
      echo 
    "Probieren Sie es sp&auml;ter noch einmal</p>\n";
      
    ?><a href="new3.php<?php session::showLink(true); ?>">Zurück zu Auswahl</a></p><?php
    }
    @
    mysql_close();

    ?>
    Vielen Dank schon im Voraus!!
    Gruß
     

  2. #2
    Avatar von einfach nur crack
    einfach nur crack einfach nur crack ist offline mag Cookies & Kekse
    tutorials.de Premium-User
    Registriert seit
    May 2007
    Ort
    Dresden (Sachsen)
    Beiträge
    1.961
    Du lädst die entsprechenden Datensätze in einer WHILE-Schleife aus. Dabei wird jeweils die bisherige ID mit der ID des aktuellen Datensatzes überspeichert. Deswegen müsstest du die WHILE-Schleife entfernen damit du nur die erste ID fängst.
     
    Ich mag:
    • positive Bewertungen meiner Beiträge
    • ein Danke für meine hilfreichen Beiträge

    Dabei kann ich dir helfen: PHP --- Javascript --- Ruby --- Coffeescript --- CSS --- HTML --- Webtechnologien --- Shell --- UNIX

    ... noch was: falls du mit dem Thema hier fertig bist, dann kannst du es auch als erledigt markieren.

  3. #3
    Avatar von Sven Mintel
    Sven Mintel Sven Mintel ist offline Mitglied
    Registriert seit
    Aug 2003
    Beiträge
    18.238
    Blog-Einträge
    6
    Moin,

    zusätzlich solltest du nach dem Löschen eines Datensatzes die betreffende Session-Variable löschen.
     

  4. #4
    Larnhof Larnhof ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    40
    Hallo "einfach nur crack"!!
    Danke für deine Antwort
    Vielleicht hab ich mein problem falsch beschrieben.
    Ich möcht schon das mir auf Seite 1 mehrer Datensätze angezeigt.
    Mein Problem liegt darin das auf Seite 2 nur der letzte Datensatz mit der letzten ID ausgegeben wird.
    In meinen script sollte ich den Benutzer löschen können der eine bestimmte ID hat.
    so zB.:
    Seite 1:

    1 User 1 test@test.com
    2 Tester 0 tester@hkl.at
    3 echo 0 echo@echo.at

    Auswahl: 2 Tester 0 tester@hkl.com

    Seite 2:
    2 Tester 0 tester@hkl.com


    Vielen Dank
    Gruß
    Geändert von Larnhof (01.03.10 um 10:42 Uhr)
     

  5. #5
    Larnhof Larnhof ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    40
    Hallo Sven Mintel!!
    Danke für deinen Tipp!!
     

  6. #6
    Larnhof Larnhof ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    40
    Hallo!!
    @einfach nur crack
    Hab jetzt schon so viel ausprobiert und es bleibt daran hängen so wie es du geschrieben hast, an der while schleife.

    Hätte vielleicht jemand einen Tipp wie ich das am besten lösen kann

    Vielen Dank im Voraus
    Gruß
     

  7. #7
    Pablorama Pablorama ist offline Mitglied Bronze
    Registriert seit
    Dec 2009
    Beiträge
    25
    Hallo,

    wenn ich es richtig Verstanden habe, dann willst du auf Seite 1 alle User anzeigen, und auf Seite 2 Löschen.

    Ich würde es in der Theorie so machen, dass ich die ID als Get Parameter an die Url hänge, die Aufgerufen werden soll zum Löschen.

    In etwas so: delkontatkt.php?id=$id

    Ist nur einen Anregung.

    MfG Pablo
     

  8. #8
    Larnhof Larnhof ist offline Mitglied Bronze
    Registriert seit
    Feb 2010
    Beiträge
    40
    Hallo Pablorama!!
    Danke dir für deine Antwort!
    Nur leider kann ich es so nicht machen da ich beim login eine erzeugte SID übergebe die einen Benutzer eindeutig identifiziert.
    also ich brauch das hier unbedingt:
    PHP-Code:
    <a href="weiter.php<?php session::showLink(true); ?>">&Auml;ndern</a><br>
    Danke
    Gruß
     

Ähnliche Themen

  1. Session Variable wird nicht übergeben
    Von maddin12 im Forum PHP
    Antworten: 3
    Letzter Beitrag: 25.11.09, 19:51
  2. Session-Variable an JS übergeben
    Von bauchinj im Forum Javascript & Ajax
    Antworten: 4
    Letzter Beitrag: 04.11.09, 15:34
  3. variable in Session übergeben
    Von xony im Forum PHP
    Antworten: 7
    Letzter Beitrag: 12.12.04, 18:44
  4. Antworten: 2
    Letzter Beitrag: 28.07.04, 14:50
  5. Antworten: 2
    Letzter Beitrag: 27.09.02, 13:26