SQL Numerischen Wert in PHP Variable auf Datenbank speichern?

Moretto Delucci

Lt. Junior Grade
Registriert
Feb. 2010
Beiträge
378
Ich bin inzwischen an einem Punkt angelangt, bei dem ich um einen SQL Server nichtmehr herumkomme.
Mein Wissensstand ist sehr niedrig, ich kann nur ein paar Abfragen. Jetzt habe ich bei meinem einarmigen Bandit-Spiel vor, eine Highscoretabelle anzulegen. Jetzt muss eine Datenbank her.

Eine Datenbank habe ich auch (Benutzername, Passwort, Beschreibung).
Wie kann ich jetzt Werte einer PHP- Variable oder gar einer Tabelle in SQL Speichern? Gibt's da ein dutzend Zeilen für Copy 'n Paste oder brauche ich "ein Buch"?

Anregungen und Tipps erwünscht!

Daaron bist du schon in den Startlöchern? ;)
 
Daaron schreibt sich sicherlich schon die Finger wund:

Also PHP ist schon bekannt, gut, dann guck dir mal PDO an.
Für die Datenbanken: phpMyAdmin und dann sich durchwurschteln :).

So grob:
PHP:
$db=new PDO("mysql:host=.;dbname=meineDatenbank","Nutzer","geheimes_passwort");
$prep=$db->prepare("select a,b,c from tab while a=?");
$prep->execute(array($user_id));
while($erg=$prep->fetch()){
echo "user logged in, Name is ".$erg["a"];
}
Zu den Daten: Also Datenbanken können Zahlen, Text Datum etc.

Wenn du tabellarische Daten ablegen willst (und diese auch noch irgendwie verarbeiten), dann machst du eine Tabelle und tust die da rein.
 
Zuletzt bearbeitet:
Hallo,

Code:
<?php
 $con=mysqli_connect("example.com","peter","abc123","my_db");
 // Check connection
 if (mysqli_connect_errno())
   {
   echo "Failed to connect to MySQL: " . mysqli_connect_error();
   }
 
mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age)
 VALUES ('Peter', 'Griffin',35)");
 
mysqli_query($con,"INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Glenn', 'Quagmire',33)");
 
mysqli_close($con);
 ?>

Quelle: http://www.w3schools.com/php/php_mysql_insert.asp


Gruß
Frog33r
 
Hi,

mach besser direkt mit prepared Statements. Alles andere wäre nicht mehr Zeitgemäß und im Grunde auch mehr arbeit.
 
Moretto Delucci schrieb:
Bin gerade hier drübergestolpert: http://www.php-einfach.de/einf_mysql_verbindung_aufbauen.php
Das müsste es doch sein? (Für die Nachwelt)

Muss ich auf etwas achten?
Lass die Finger davon. Ja, es funktioniert... noch. Der alte prozedurale Stil funktioniert durchaus noch, wird nur evtl. in zukünftigen Versionen von PHP endlich wegfallen. mysql_real_escape_string() ist z.B. bereits als "deprecated" markiert und löst außerdem unter gewissen Umständen nette Fehlermeldungen aus.
Die neue objektorientierte Variante über PDO ist deutlich besser.
- Sie ist flexibel, du bist nicht an MySQL gebunden sondern kannst den selben Code z.B. auch für SQLite oder PostgreSQL nutzen.
- Sie ist sicherer. Bei der alten prozeduralen Methode musst du Handstände machen, um dich vor SQL Injection Angriffen zu schützen. Die neuen Prepared Statements sind quasi immun gegen diese Sorte Angriffe.

Du musst aber bei PDO mit try/catch arbeiten, um eventuelle Fehlermeldungen vor dem Besucher zu verbergen.


Was das Einfügen von Daten in die Datenbank angeht: Mit INSERT-Queries kannst du quasi genau so verfahren wir mit SELECTs.
 

Ähnliche Themen

Zurück
Oben