Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

  • Autor

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

  • Autor

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"

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

  • Autor
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

Hast du denn auch im HTML die Namen der inputfehlder angepasst? Die sind jetzt im PHP Code kleingeschrieben, aber weiter obne in den Screenshots für dasHTML groß

  • Autor

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

  • Autor
vor 3 Minuten schrieb äymm:

Hast du denn auch im HTML die Namen der inputfehlder angepasst? Die sind jetzt im PHP Code kleingeschrieben, aber weiter obne in den Screenshots für dasHTML groß

Hab ich grade nochmal geändert, aber kommt immernoch die selben Meldungen

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

  • Autor
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

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

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

  • Autor

Ich hab jetzt herrausgefunden, dass bis 2 Variablen gehen ohne problem.. Aber sobald die 3. Variable oder mehr dazu kommen, streikt der wieder mit diesem Fatal Error..

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.