• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Einfache DB-Feld-Abfrage

Status
Für weitere Antworten geschlossen.

Berner

Neues Mitglied
Hallo,
mit folgender Abfrage erhalte ich die Fehlermeldung dass die Variable $crud nicht definiert ist:

if (isset($_GET['id'])) {
$sql = 'SELECT crud FROM accounts WHERE id = '.$_SESSION['id'];

foreach ($pdo->query($sql) as $row) {
$crud = $row['crud'];
}
}

Nehme ich die if-Abfrage weg, d.h. die oberste und die unterste Zeile entfernen, erhalte ich die Fehlermeldung dass "Undefined array key "id"
Kann es an der Sessionsvariable liegen, d.h. anders definieren?
 
Werbung:
Die genannte Fehlermeldung kommt nicht von der Stelle. Ist das wirklich dein gesamter Quellcode?
 
Werbung:
Danke für die Nachfrage, ich habe eine Lösung gefunden.
Neue Datei main_session.php erstellt, mit check_loggedin($pdo);

Code:
<?php
include 'main.php';
check_loggedin($pdo);

// Benutzerrechte crud in DB abfragen
$stmt = $pdo->prepare('SELECT crud FROM accounts WHERE id = ?');
$stmt->execute([$_SESSION['id']]);
$account = $stmt->fetch(PDO::FETCH_ASSOC);
$crud = $account['crud'];

// Benutzerrechte vergeben ( 0 = ohne, 1 = mit Rechten)
$create = $read = $update = $delete = 0; // Standardeinstellung
if (preg_match('/[c]/', $crud)) {
    $create = 1;                         // auch für clone
}
if (preg_match('/[r]/', $crud)) {
    $read = 1;
}
if (preg_match('/[u]/', $crud)) {
    $update = 1;
}
if (preg_match('/[d]/', $crud)) {
    $delete = 1;
}
?>
 
Zuletzt bearbeitet:
Status
Für weitere Antworten geschlossen.
Zurück
Oben