Via php/html etwas in die datenbank schreiben

SQL, Dateimanagement - Sprachunabhängige Datenhaltung
sashpta
Beiträge: 104
Registriert: Fr Dez 12, 2014 2:55 pm

Via php/html etwas in die datenbank schreiben

Beitrag von sashpta » Di Jun 21, 2016 7:16 pm

Hey,
kann ich etwas in eine Datenbank über meine .php Datei schreiben?
Meine Idee wär jetzt so:

Wenn ich diesen Code habe:

Code: Alles auswählen

    $db = mysqli_connect("127.0.0.1", "root", "julian", "phpdb");
    $result = mysqli_query($db, "SELECT * FROM usertable");
habe ich am Ende in der Variable $result den Inhalt der Tabelle gespeichert, wenn ich das richtig verstanden habe.
Kann ich dann einfach die zweite Zeile so umschreiben?

Code: Alles auswählen

$result = mysqli_query($db, "INSERT INTO usertable (Name, Age) value ('Alex', 29)
oder geht das komplett anders?


Und wenn ich in HTML eine Benutzereingabe mache und den Eintrag dann in einer Variable speicher, kann ich diese dann auch in die DB eintragen?

MFG Julian

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Via php/html etwas in die datenbank schreiben

Beitrag von Xin » Di Jun 21, 2016 9:35 pm

sashpta hat geschrieben:Hey,
kann ich etwas in eine Datenbank über meine .php Datei schreiben?
Meine Idee wär jetzt so:

Wenn ich diesen Code habe:

Code: Alles auswählen

    $db = mysqli_connect("127.0.0.1", "root", "julian", "phpdb");
    $result = mysqli_query($db, "SELECT * FROM usertable");
habe ich am Ende in der Variable $result den Inhalt der Tabelle gespeichert, wenn ich das richtig verstanden habe.
Etwas präziser: Du hast eine Kopie der Daten Deiner Datenbank in der Variable $result. Nicht den originalen Inhalt der Datenbank, auf dem die Datenbank Queries ausführt.
sashpta hat geschrieben:Kann ich dann einfach die zweite Zeile so umschreiben?

Code: Alles auswählen

$result = mysqli_query($db, "INSERT INTO usertable (Name, Age) value ('Alex', 29)
oder geht das komplett anders?
Das geht so, aber Du kannst diesen Query auch direkt an die Datenbank schicken und musst nicht erst die komplette Datenbank kopieren.
sashpta hat geschrieben:Und wenn ich in HTML eine Benutzereingabe mache und den Eintrag dann in einer Variable speicher, kann ich diese dann auch in die DB eintragen?
Aus den Variablen, die Du mit PHP erhältst musst Du einen SQL-Statement basteln, also zum Beispiel das INSERT INTO mit den entsprechenden Werten zusammenbasteln, bevor Du den String dann an die Datenbank schickst.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

sashpta
Beiträge: 104
Registriert: Fr Dez 12, 2014 2:55 pm

Re: Via php/html etwas in die datenbank schreiben

Beitrag von sashpta » Di Jun 21, 2016 10:15 pm

Danke erstmal :)
Xin hat geschrieben: Das geht so, aber Du kannst diesen Query auch direkt an die Datenbank schicken und musst nicht erst die komplette Datenbank kopieren.
Und wie kann ich das da direkt rein schreiben?
Xin hat geschrieben:Aus den Variablen, die Du mit PHP erhältst musst Du einen SQL-Statement basteln, also zum Beispiel das INSERT INTO mit den entsprechenden Werten zusammenbasteln, bevor Du den String dann an die Datenbank schickst.

Code: Alles auswählen

$result = mysqli_query($db, "INSERT INTO usertable (Name, Age) value ('Alex', 29)
also dann "Alex" für Variable x und "29" für Variable y ersetzen? oder fehlt da noch ein Zwischenschritt?

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Via php/html etwas in die datenbank schreiben

Beitrag von Xin » Mi Jun 22, 2016 11:08 am

sashpta hat geschrieben:Und wie kann ich das da direkt rein schreiben?
Es machen: INSERT INTO ...
sashpta hat geschrieben:

Code: Alles auswählen

$result = mysqli_query($db, "INSERT INTO usertable (Name, Age) value ('Alex', 29)
also dann "Alex" für Variable x und "29" für Variable y ersetzen? oder fehlt da noch ein Zwischenschritt?
Datenbank öffnen, SQL-Befehle hinschicken und fertig... gfs. auch wieder schließen. :)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

sashpta
Beiträge: 104
Registriert: Fr Dez 12, 2014 2:55 pm

Re: Via php/html etwas in die datenbank schreiben

Beitrag von sashpta » Mi Jun 22, 2016 12:41 pm

Aber ich hatte das doch schon mit INSERT INTO wo ist denn dann der Unterschied?

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Via php/html etwas in die datenbank schreiben

Beitrag von Xin » Mi Jun 22, 2016 1:25 pm

sashpta hat geschrieben:Aber ich hatte das doch schon mit INSERT INTO wo ist denn dann der Unterschied?
Ich sagte nicht, dass INSERT INTO falsch ist.
Ich sagte, dass SELECT * überflüssig ist, weil Du die Tabelle zum Ändern nicht im eigenen Computer haben musst, sondern nur die Aufforderung zur Änderung an die Datenbank schicken musst. Du brauchst kein SELECT, um "dann die zweite Zeile" mit INSERT INTO auszuführen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

sashpta
Beiträge: 104
Registriert: Fr Dez 12, 2014 2:55 pm

Re: Via php/html etwas in die datenbank schreiben

Beitrag von sashpta » Mi Jun 22, 2016 2:25 pm

Ich meinte ja auch das ich SELECT * mit INSERT INTO austausche

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Via php/html etwas in die datenbank schreiben

Beitrag von Xin » Mi Jun 22, 2016 3:11 pm

sashpta hat geschrieben:Ich meinte ja auch das ich SELECT * mit INSERT INTO austausche
Dann hast du alles, was Du brauchst :)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

sashpta
Beiträge: 104
Registriert: Fr Dez 12, 2014 2:55 pm

Re: Via php/html etwas in die datenbank schreiben

Beitrag von sashpta » Mi Jun 22, 2016 3:58 pm

Code: Alles auswählen

<?php
	$db = mysqli_connect("127.0.0.1", "root", "julian", "phpdb");
	$add = mysqli_query($db, "INSERT INTO usertable (Name, Age) VALUE ('Alex', 29");
?>		
Hab jetzt mal das gemacht, um zu testen ob das so klappt wie gewollt, allerdings ist in der DB kein neuer Eintrag :/

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Via php/html etwas in die datenbank schreiben

Beitrag von Xin » Mi Jun 22, 2016 4:13 pm

sashpta hat geschrieben:

Code: Alles auswählen

<?php
	$db = mysqli_connect("127.0.0.1", "root", "julian", "phpdb");
	$add = mysqli_query($db, "INSERT INTO usertable (Name, Age) VALUE ('Alex', 29");
?>		
Hab jetzt mal das gemacht, um zu testen ob das so klappt wie gewollt, allerdings ist in der DB kein neuer Eintrag :/
Mehr Klammern setzen ;)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten