Teema: [php} - klopsee õpib!

Tulemused 1 kuni 2 2'st

  1. #1

    [php} - klopsee õpib!

    Tere vahveldajad!

    Vaikselt nokitsen siin oma ette ning püüdnud leida lahendust ka google abil aga kuskilt ikka jääb miskit puudu.

    Soov teha siia selline asi, et kuvaks sisse loginud kasutaja andmed ainult - link pildile !!!
    nt:
    Kasutajanimi: kasutaja1
    E-mail: TEST@TEST.EE
    Liitunud: 06.09.2019.

    Kood: https://pastebin.com/z0dQZuWS , minu proovimine.. kuid kuvab kõik test kasutajad
    1. kasutaja 1
    2. kasutaja 2
    3. kasutaja 3
    4. kasutaja 4

    Ning minu point asjal kuidas ta näitaks ainult sisseloginud kasutaja 1 andmed
    Soov siis aru saada kust ma jooksen juba vastu puud.. võimalik, et juba algusest. Kuid küsija suu pihta ei lööda!
    kollanokk

  2. Reklaam

    Reklaamid on Google Adsense poolt
    Vahvel.Net ei ole reklaamidega seotud ega saa neid muuta

      
     
  3. #2
    Eeldan, et infot kasutaja kohta hoiad sessioonis. Ehk siis õnnestunud sisselogimisel lisad sisseloginud kasutaja ID tema sessiooni muutujatesse.
    Ehk siis sisselogimisel:
    PHP Kood:
    <?php
    session_start
    (); // Igale lehele, kus kavatsed sessiooniandmeid/-funktsioone kasutada (ühe korra)

    /* kõik toimingud päringu valideerimiseks ning autentimiseks */

    /* sisselogimine õnnestus, lisa kasutaja ID  $_SESSION muutujatesse */
    $_SESSION["user_id"] = $user_id// kus $user_id on sisselogitud kasutaja ID
    Sisselogitud kasutaja ID on nüüd edukalt $_SESSION skoobis.

    Kasutaja info pärimisel, sa hetkel küsidki ju kõik registreeritud kasutajad ning prindid need üks haaval välja. Lisa päringule piirang, et too tagastaks ainult konkreetse kasutaja andmed.

    PHP Kood:
    <?php
       session_start
    (); // Oluline!

       
    $con=mysqli_connect("localhost","root","","database");
    // kontrollime ühendust databaasiga
    if (mysqli_connect_errno())
      {
      echo 
    "Ei saanud ühenudust: " mysqli_connect_error();
      }
     
    // Kontrolli kas kasutaja on sisselogitud
    $user_id = (isset($_SESSION["user_id"]) && is_numeric($_SESSION["user_id"]))? $_SESSION["user_id"] : null;
    $result null;

    if(!
    is_null($user_id)){ // Pärime ainult siis, kui kasutaja on päriselt sisselogitud
       // Lisa päringule piirang, mille peale tagastatakse vaid ühe kasutaja andmed
       
    $sql="SELECT * FROM users WHERE id=?";
       
    // Ning turvalisuse mõttes, kasuta prepared statemente
       
    $stmt $con->prepare($sql);
       
    $stmt->bind_param("i"$user_id); // lisa sisselogitud kasutaja ID turvaliselt päringule
       
    $stmt->execute();
       
    $result $stmt->get_result();
       
    $stmt->close();
    }

    if (!
    is_null($result)){
      
    // toome andmed nähtavale lehele
      
    while ($row=$result->fetch())
        {
        
    printf ("%s (%s)\n",$row[0],$row[1]);
        }
      
    // Free result set
       
    $result->free();
    }
     
    mysqli_close($con);
    ?>
    Peaks toimima, testinud pole. Kindlasti leidub antud väljundi saamiseks mõni elegantsem lahendus, kuid pole mysqli-ga väga tegelenud.
    Mama,just killed a man, put a gun against his head, pulled my trigger, now he's dead,

Postitamis Õigused

  • Sa lisada uusi teemasid
  • Sa ei või lisada uusi vastuseid
  • Sa ei või lisada manuseid
  • Sa ei või muuta enda poste
  • BB code on Sees
  • Smilies are Sees
  • [IMG] kood on Sees
  • [VIDEO] code is Sees
  • HTML Kood on Väljas

Sildid sellele teemale