Aktuell eingeloggten Benutzer auslesen.

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

wärs nicht einfacher den aktuellen user (id und/oder name) in die $_SESSION variable (array) zu speichern (statt in der sessions-tabelle). dann hast du ihn immer parat.

Wie ist die URL deiner Seite?

An der Seite arbeite ich momentan nur Lokal auf meinem Pc

0

INSERT INTO wird doppelt eingetragen warum (MySQL)?

Hallo zusammen,

leider finde ich den Fehler nicht hab ihr ne Idee warum mein Formular doppelt Eingetragen wird ? Hier der Code:

if(isset($_GET["sub-manuel"])){
	$addr = $_POST["address"];
	$currencyid = $_POST["currencyid"];
	$coins = str_replace(",", ".", $_POST["coins"]);
	$cost_currency = $_POST["cost_currency"];
	$cost_cash = str_replace(",", ".",$_POST["cost_cash"]);
	$cost_eur = $cost_cash;
if(!empty($addr)) {
    $address = $addr;
}
else {
    $address = "novalue";
}

$balance = number_format($coins, 12);
$symbol = findCryptoSymbol($currencyid);

$query ="INSERT INTO coins (user_id, currencyid, symbol, address, coins, cost_eur, status) VALUES (:user_id, :currencyid, :symbol, :address, :coins, :cost_eur, :status)";
$statement = $pdo->prepare($query);
$statement->execute(array('user_id' => $user["id"], 'currencyid' => $currencyid, 'symbol' => $symbol,'address' => $address, 'coins' => $balance, 'cost_eur' => $cost_eur, 'status' => true ));

if ($statement->execute()){
    $insertdatavalue = true;
}
else {
    $insertdatavalue = false;
}

}

Danke im voraus!

...zur Frage

Habe ich eventuell fehlerhaften PHP-Code?

Hier mein Code (habe ich aus einem YouTube-Tutorial:

https://www.youtube.com/watch?v=arqv2YVp_3E):

<?php
  // Get value
  $username = $POST['username'];
  $password = $POST['password'];

  // Prevent MySQL injection
  $username = stripcslashes($username);
  $password = stripcslashes($password);
  $username = mysql_real_escape_string($username);
  $password = mysql_real_escape_string($password);

  // Connect to MySQL
  mysql_connect("MEINESERVERURL", "MEINACCOUNT", "MEINPASSWORT");
  mysql_select_db("MEINEDATENBANK");

  // Query the database for user
  $result = mysql_query("select * from users where username = '$username' and password = '$password'") or die("Unable to login: database query error!".mysql_error());
  $row = mysql_fetch_array($result);
  
  if ($row['username'] == $username && $row['password'] == $password ){
    echo "Login successful! Welcome!".$row['username'];
  }
  else {
    echo "Login failed!";
  }
?>

Und hier meine Fehlermeldungen:

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in DATEIPFAD on line 9
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in DATEIPFAD on line 9
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user ''@'localhost' (using password: NO) in DATEIPFAD on line 10
Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in DATEIPFAD on line 10
Warning: mysql_connect() [function.mysql-connect]: Connection timed out in DATEIPFAD on line 13
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user ''@'localhost' (using password: NO) in DATEIPFAD on line 14
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in DATEIPFAD on line 14
Warning: mysql_query() [function.mysql-query]: Access denied for user ''@'localhost' (using password: NO) in DATEIPFAD on line 17
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in DATEIPFAD on line 17
Unable to login: database query error!Access denied for user ''@'localhost' (using password: NO)

Was sollte ich ändern, damit es funktioniert?

...zur Frage

Was speichert man in Datenbanken ab?

Was wird da abgespeichert genau? .z.B. habe ich eine Website programmiert die halt nicht so groß ist aber ich möchte mit Datenbanken arbeiten was und wie (programm) speicher ich das ab?

...zur Frage

Finde den Fehler nicht(PHP)?

Ich arbeite an einem Login. In einer Tabelle "users" in einer Datenbank gibt es die Spalten "username" und "password". In einem Formular gebe ich beide Dinge ein um mich einzuloggen. Diese Eingaben vergleiche ich dann mit einer Abfrage und das daraus resultierende Ergebnis. Nun habe ich schon einige Ausgaben mit eingebaut, die überprüfen sollen, an was mein Problem liegt. Das Problem liegt daran, dass in $row nichts gespeichert ist. var_dump() gibt hier "NULL". Wenn ich die SQL-Abfrage jedoch in phpmyadmin eingebe funktioniert sie. Woran könnte es noch liegen?

<?php
//Initialisierung der Session
session_start();

//Verbindung zur Datenbank
$pdo = new PDO(DIE VERBINDUNGSDATEN);

//Übernahme aus Formular
$name = $_POST["username"];
$password = $_POST["pwd"];

$shapwd = sha1($password);

//Suchkriterien angeben
$sql = "SELECT * from users WHERE username=$name AND password=$shapwd";

//LoginOK zeigt Status login an
$loginOk = false;

var_dump($name);
echo "<br>";
var_dump($shapwd);
echo "<br>";
echo "<br>";

//Durchsuchen der Datenbank
foreach($pdo->query($sql) AS $row){    
    echo $row['username']."<br>";
    echo $row['password']."<br>";
        /*
    if($row['username']==trim($name) && $row['password']==trim($shapwd)){
        $loginOk = true;
        break;
    }*/
}

var_dump($row['username']);
echo "<br>";
var_dump($row['password']);
echo "<br>";
echo "<br>";

if($loginOk === true){
    header('Location: ../mainpage.php');
}else{
    header('Location: ../falsch.html');
}
?>
...zur Frage

Php datensatz finden und löschen?

Hallo,

ich bin zur zeit an einem Php Projekt und möchte einen newsletter programmieren. Man kan mittlerweile einwandfrei sich in die Datenbank mit seinem namen und email eintragen. Doch leider schaffe ich es nicht dass man sich nun wieder austragen kann... ich komm einfach nicht drauf wie man das eingegebene ermittelt und dann geziehlt die id löscht.

Hier der code zum löschen:

<?php
$name = $_POST["name"]; 
$email = $_POST["email"]; 
if($name == $name OR $email == $email) 
  { 
$result = mysql_query("DELETE id FROM newsletter WHERE email LIKE '$email'"); 
}
?>
...zur Frage

Webshop: Wie stelle ich per SQL Produkte mit variablen Attributen bereit? (Datenbankdesign)?

Das Problem ist eigentlich leicht erklärt, viele Onlineshops führen dies auch ohne Problem durch:

Ich würde gerne in meinem bald entstehenden Webshop Produkte anbieten, die sich jedoch durch Attributsänderungen modifizieren lassen.
Sprich ich lege eine Festplatte in den Warenkorb und ändere die Größe von Standard 512GB auf neue 1TB.

Die Attribute haben eigene Preise bzw Preismodifikatoren und wirken sich am ende beim auswerten auf das Endprodukt aus.

Im Quelltext ist sowas leicht implementiert, jedoch will ich mit Blick auf die Zukunft auch solche Informationen in der MySQL Datenbank ablegen, in der schon Produkte und Bestellungen abgelegt werden.

Wenn ich jede Produktkonstellation als eigenes Produkt anbiete, dann bin ich quasi schon fertig, ich würde aber gerne die "Optionen" der Produkte separat speichern, so dass man diese z.B. über ein Backend schnell bearbeiten kann.

Ein Weg wäre es für jede "Produktfamilie" extra Tabellen zu erstellen, die alle Attribute tragen. Dies wäre mein letzter Ausweg; gibt es da nicht eine bessere Lösung?
Ich denke schon an schweineren wie LDAP, habe aber auch von EAV gehört, was anscheinend gar keine gute Idee sein soll.

Hat da jemand eine gute Lösung für so ein E-Commerce Projektß

...zur Frage

Was möchtest Du wissen?