PHP: $_SESSION - Was sind die vor-und Nachteile der Speicherung von temporär verwendeten Daten in der $_SESSION variable

Eins hab ich angefangen, immer häufiger in letzter Zeit ist abrufen einiger Daten am Anfang einer Aufgabe und Speicherung in einer $_SESSION['myDataForTheTask'].

Nun scheint es sehr bequem zu tun, aber ich weiß nichts über die performance, die Sicherheit Risiken oder ähnlich, mit diesem Ansatz. Ist es etwas, das regelmäßig getan durch Programmierer mit mehr Erfahrung, oder ist es eher ein amateur was zu tun?

Zum Beispiel:

if (!isset($_SESSION['dataentry']))
{
    $query_taskinfo = "SELECT participationcode, modulearray, wavenum FROM mng_wave WHERE wave_id=" . mysql_real_escape_string($_GET['wave_id']);
    $result_taskinfo = $db->query($query_taskinfo);
    $row_taskinfo = $result_taskinfo->fetch_row();

        $dataentry = array("pcode" => $row_taskinfo[0], "modules" => $row_taskinfo[1], "data_id" => 0, "wavenum" => $row_taskinfo[2], "prequest" => FALSE, "highlight" => array());

        $_SESSION['dataentry'] = $dataentry;
}
  • Dein SQL-query ist anfällig für SQL-injection-Angriffe. Zum Beispiel könnte jemand setzen '?wave_id=wave_id' und die Abfrage würde alle Zeilen auswählen. (Es ist schlimmer mit DELETE, INSERT und UPDATE Abfragen.) In diesem Fall müssen Sie code schreiben, um sicherzustellen, dass es eine Zahl ist, und der einfachste Weg dies zu tun, ist intval()
Schreibe einen Kommentar