Zum Inhalt springen
  • 0

PHP ausgabe in SQL Tabelle


FoxOff

Frage

Hallo ihr lieben,

stehe absolut aufm Schlauch :( ich bin seit ein paar Tagen dran, SQL zu lernen und möchte gerne per PHP was in eine SQL Tabelle eintragen. 
Ich hatte erst eine "test" Tabelle gemacht, dort klappt es auch. In der richtigen Tabelle habe ich jedoch andere variablen und dort funktioniert es leider nicht.. 

Als Beispiel ist Bild 1 der test, in dem das ganze funktioniert. 
Bild 2 ist das, was funktionieren soll, es aber nicht tut :(

Es soll praktisch sowas rauskommen wie bei der Tabelle mit Max Mustermann ..... (Das habe ich manuell bei SQL eingetragen)

Wenn ich das ganze jetzt ausgefüllt habe und absenden möchte kommen die error "Warning: mysqli_connect(): (HY000/1044): Access denied for user ''@'localhost' to database 'projekt_clab' in C:\xampp\htdocs\Clab.php on line 12 Notice: Undefined index: Vorname in C:\xampp\htdocs\Clab.php on line 17 Notice: Undefined index: Nachname in C:\xampp\htdocs\Clab.php on line 18 Notice: Undefined index: Telefonnummer in C:\xampp\htdocs\Clab.php on line 19 Notice: Undefined index: Raum in C:\xampp\htdocs\Clab.php on line 20 Notice: Undefined index: Gerät in C:\xampp\htdocs\Clab.php on line 21 Fatal error: Uncaught Error: Call to a member function prepare() on boolean in C:\xampp\htdocs\Clab.php:23 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 23"..

 

Bild1.JPG

bild1..JPG

bild2.JPG

bild2..JPG

Bearbeitet von DomentusTM
Link zu diesem Kommentar
Auf anderen Seiten teilen

Empfohlene Beiträge

  • 0

Code:
 

<form action="" method="post">
 <input type="text" name="Nutzer_ID" placeholder="Nutzer_ID"><br>
 <input type="text" name="Vorname" placeholder="Vorname"><br>
 <input type="text" name="Nachname" placeholder="Nachname"><br>
 <input type="text" name="E-Mail" placeholder="E-Mail"><br>
 <input type="text" name="Telefonnummer" placeholder="Telefonnummer"><br>
 <input type="text" name="Raum" placeholder="Raum"><br>
 <input type="text" name="Geraet" placeholder="Gerät"><br>
 <input type="submit" name="submit" value="Absenden"><br>
</form>

<?php

$db = mysqli_connect("localhost","","","projekt_clab");

if ($db -> connect_errno)
      {
        printf("Verbindung fehlgeschlagen: %s\n", $db->connect_error);
        exit();
      }


if(isset($_POST["submit"])):
    $nutzerID = $_POST['nutzerID'];
    $vorname = $_POST['vorname'];
    $nachname = $_POST['nachname'];
    $email = $_POST['E-Mail'];
    $telefonnummer = $_POST['telefonnummer'];
    $raum = $_POST['raum'];
    $gerät = $_POST['geraet'];
    
    $absenden = $db->prepare("INSERT INTO nutzer (Nutzer_ID ,Vorname, Nachname, E-Mail, Telefonnummer, Raum, Geraet) VALUES (?,?,?,?,?,?,?)");
    $absenden->bind_param('isssiis',$nutzer_ID,$vorname,$nachname,$email,$telefonnummer,$raum,$geraet);
    $absenden->execute();
endif;
?>

 

Fehlermeldungen:
Warning: mysqli_connect(): (HY000/1044): Access denied for user ''@'localhost' to database 'projekt_clab' in C:\xampp\htdocs\Clab.php on line 14

Notice: Trying to get property 'connect_errno' of non-object in C:\xampp\htdocs\Clab.php on line 16

Notice: Undefined index: geraet in C:\xampp\htdocs\Clab.php on line 30

Fatal error: Uncaught Error: Call to a member function prepare() on boolean in C:\xampp\htdocs\Clab.php:32 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 32

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

hab ich, dann kommen diese Fehlermeldungen wieder "Warning: mysqli_connect(): (HY000/1044): Access denied for user ''@'localhost' to database 'projekt_clab' in C:\xampp\htdocs\Clab.php on line 14

Notice: Undefined index: geraet in C:\xampp\htdocs\Clab.php on line 23

Fatal error: Uncaught Error: Call to a member function prepare() on boolean in C:\xampp\htdocs\Clab.php:25 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 25"

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 1 Minute schrieb DomentusTM:

hab ich, dann kommen diese Fehlermeldungen wieder "Warning: mysqli_connect(): (HY000/1044): Access denied for user ''@'localhost' to database 'projekt_clab' in C:\xampp\htdocs\Clab.php on line 14

Notice: Undefined index: geraet in C:\xampp\htdocs\Clab.php on line 23

Fatal error: Uncaught Error: Call to a member function prepare() on boolean in C:\xampp\htdocs\Clab.php:25 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 25"

Hast du die Variable umbenannt? Weil er immer noch ein Problem mit dem Statement hat. Du kannst die Variable nicht $gerät nennen und dann im prepared Statement versuchen die nicht existente Variable $geraet einzufügen.

Bearbeitet von Gottlike
typo
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 1 Minute schrieb Gottlike:

Hast du die Variable umbenannt? Weil er immer noch ein Problem mit dem Statement hat. Du kannst die Variable nicht $gerät nennen und dann im prepared Statement versuchen die nicht existente Variable $geraet einzufügen.

<?php

$db = mysqli_connect("localhost","","","projekt_clab");

if(isset($_POST["submit"])):
    $nutzerID = $_POST['nutzerID'];
    $vorname = $_POST['vorname'];
    $nachname = $_POST['nachname'];
    $email = $_POST['E-Mail'];
    $telefonnummer = $_POST['telefonnummer'];
    $raum = $_POST['raum'];
    $geraet = $_POST['geraet'];
    
    $absenden = $db->prepare("INSERT INTO nutzer (Nutzer_ID ,Vorname, Nachname, E-Mail, Telefonnummer, Raum, Geraet) VALUES (?,?,?,?,?,?,?)");
    $absenden->bind_param('isssiis',$nutzer_ID,$vorname,$nachname,$email,$telefonnummer,$raum,$geraet);
    $absenden->execute();
endif;
?>

Hab ich geändert.. ist alles einheitlich

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0

Notice: Undefined index: geraet in C:\xampp\htdocs\Clab.php on line 23

Fatal error: Uncaught Error: Call to a member function bind_param() on boolean in C:\xampp\htdocs\Clab.php:26 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 26

Jetzt hat er kein problem, sich zu verbinden. Aber dennoch bleiben die beiden Fehlermeldungen :x

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 3 Minuten schrieb DomentusTM:

Notice: Undefined index: geraet in C:\xampp\htdocs\Clab.php on line 23

Weil es bei dir Geraet heißt und nicht geraet (laut gepostetem Text).

vor 3 Minuten schrieb DomentusTM:

Fatal error: Uncaught Error: Call to a member function bind_param() on boolean in C:\xampp\htdocs\Clab.php:26 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 26

Poste mal bitte, welche Typen deine Tabellenfelder haben.

Bearbeitet von Rienne
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 2 Minuten schrieb PVoss:

Dann ist jetzt deine SQL-Abfrage fehlerhaft. Das ist schonmal gut, sieh mal nach ob du Tabellen und Feldnamen richtig geschrieben hast.

Also Tabelle ist richtig geschrieben, ich habe jetzt nochmal die 
$nutzerID = $_POST['Nutzer_ID'];
    $vorname = $_POST['Vorname'];
    $nachname = $_POST['Nachname'];
    $email = $_POST['E-Mail'];
    $telefonnummer = $_POST['Telefonnummer'];
    $raum = $_POST['Raum'];
    $geraet = $_POST['Geraet'];
Am Ende genauso geschrieben, wie die Attribute in der Tabelle stehen (groß geschrieben am Anfang)..
Dann kommen diese Fehlermeldungen: 
Notice: Undefined index: Nutzer_ID in C:\xampp\htdocs\Clab.php on line 17
Notice: Undefined index: Vorname in C:\xampp\htdocs\Clab.php on line 18
Notice: Undefined index: Nachname in C:\xampp\htdocs\Clab.php on line 19
Notice: Undefined index: Telefonnummer in C:\xampp\htdocs\Clab.php on line 21
Notice: Undefined index: Raum in C:\xampp\htdocs\Clab.php on line 22
Notice: Undefined index: Geraet in C:\xampp\htdocs\Clab.php on line 23
Fatal error: Uncaught Error: Call to a member function bind_param() on boolean in C:\xampp\htdocs\Clab.php:26 Stack trace: #0 {main} thrown in C:\xampp\htdocs\Clab.php on line 26

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 4 Minuten schrieb Rienne:

Poste mal bitte, welche Typen deine Tabellenfelder haben.

Bei den Typen ist er an der Stelle noch nicht, der steigt schon früher aus.

@DomentusTM http://php.net/manual/de/mysqli.error.php

Damit kannst du dir solche Fehler ausgeben lassen. Versuch erstmal das zu debuggen und melde dich wenn du dabei nicht weiterkommst, wenn das so weiter geht schreiben wir sonst noch das Script für dich.

Oder sieh dir dieses Tutorial zur Fehleranalyse an:https://www.peterkropff.de/site/php/mysqli_fehler.htm

 

Zitat

$nutzerID = $_POST['Nutzer_ID'];
    $vorname = $_POST['Vorname'];
    $nachname = $_POST['Nachname'];
    $email = $_POST['E-Mail'];
    $telefonnummer = $_POST['Telefonnummer'];
    $raum = $_POST['Raum'];
    $geraet = $_POST['Geraet'];

Die ["XYZ"] - sollen nicht so dastehen wie sie in der Tabelle stehen sondern so wie du sie im Name-Attribut im HTML-Formular hast.

Bearbeitet von PVoss
Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 0
vor 4 Minuten schrieb DomentusTM:

$nutzerID = $_POST['Nutzer_ID'];

In die eckigen Klammern muss nicht die Bezeichnung der Datenbank-Spalte (das kommt erst später), sondern die Namen, die du ganz oben jeweils definiert hast.

<input type="text" name="Nutzer_ID" placeholder="Nutzer_ID"><br>

Bearbeitet von Rienne
Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Diese Frage beantworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...