-
Gesamte Inhalte
137 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von FoxOff
-
-
@PVoss, ich habe jetzt das ganze mal übersichtlicher gestaltet.. Konnte die letzten 2 Tage nicht weiter dran arbeiten und fand das heute morgen sehr unübersichtlich.
Zudem kommt auch keine Fehlermeldung mehr, dennoch wird nichts ausgegeben leider.Code:
<?php
// Start Suche ausgeben
if(isset($_GET["search"])) {
$suchwort = $_GET["search"];$verbindung=mysqli_connect("localhost","projekt_clab","","projekt_clab"); // Start Verbindung
$sql = "select * from bearbeiter where Bearbeiter_ID like '%$suchwort%' and Name like '%$suchwort%'"; // SQL Abfrage
$result = mysqli_query($verbindung, $sql) or die( mysqli_error($verbindung) );
while($row = mysqli_fetch_object($result))
{
echo $row->Bearbeiter_ID; // Start Ausgabe
echo "<br>";
echo $row->Name;
echo "<br>";
}
}
// Ende Suche
// Start Neue Eintragung in "Nutzer"
if(isset($_POST["submit"])):
$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$email = $_POST['email'];
$telefonnummer = $_POST['telefonnummer'];
$raum = $_POST['raum'];
$geraet = $_POST['geraet'];
$absenden = $db->prepare("INSERT INTO nutzer (vorname, nachname, email, telefonnummer, raum, geraet) VALUES (?,?,?,?,?,?)");
$absenden->bind_param('sssiis',$vorname,$nachname,$email,$telefonnummer,$raum,$geraet);
$absenden->execute();
// Ende Eintragung
endif;
?> -
Fatal error: Uncaught Error: Call to a member function fetch_object() on boolean in C:\xampp\htdocs\dfgfdg.php:36 Stack trace: #0 {main} thrown in C:\xampp\htdocs\dfgfdg.php on line 36 - einmal die Fehlermeldung
- und der Code
<!DOCTYPE html>
<html>
<head>
<title>test_1 Nachrichten</title>
</head>
<body>
<header>test_1 Nachrichten</header>
<section>
<form method="get">
<input type="test" class="suchfeld" name="search"/>
<input type="submit" class="suchbotton" value="Suche"/>
</form>
<p>
<?php
if(isset($_GET["search"])) {
$suchwort = $_GET["search"];
$abfrage = "";
$abfrage2 = "";
$suchwort = explode(" ", $suchwort);
for($i = 0; $i < sizeof($suchwort); $i++)
{
$abfrage .= "`betreff` LIKE '%" . $suchwort[$i] . "%'";
$abfrage2 .= "`nachricht` LIKE '%" . $suchwort[$i] . "%'";
if($i < (sizeof($suchwort) - 1)) {
$abfrage .= "OR";
$abfrage2 .= "OR";
}
}
$db = @new mysqli('localhost', 'root', '');
if(mysqli_connect_error() == 0)
{
$sql = "SELECT * FROM 'test_1' WHERE ".$abfrage . "OR" . $abfrage2;
$ergebnis = $db->query($sql);
while($zeile = $ergebnis->fetch_object())
{
echo "<p>";
echo $zeile->id;
echo " :: ";
echo $zeile->betreff;
echo " <b>";
echo $zeile->nachricht;
echo "</b></p>";
}
}
$db->close;
}
?>
</p>
</section>
</body> -
-
Gerade eben schrieb PVoss:
Moin,
Du fragst das Ergebnis von der Abfrage nirgendwo ab.
oh muss das dann mit echo? und wie wird das dann da formuliert? ?
-
Hallo ihr lieben,
ich habe in PHPMyAdmin eine Datenbank erstellt mit mehreren Tabellen (4 Tabellen) und ein php Formular mit einer Suche + Eintragung, damit man in die Liste kommt in der Datenbank.
Jetzt würde ich gerne in dem Suchfeld z.b. einen Namen eingeben können und der Spuckt mir dann alles aus, wer diesen Namen in den Tabellen trägt.
Leider weiß ich nur nicht ganz, wie ich damit anfangen bzw. weiter machen soll.Eine Verbindung zur Datenbank habe ich jedoch definitiv, da ich neben dem Suchfeld noch eine art "Registrierung" habe, in dem man ebenfalls Name, EMail etc. einträgt und es dann absendet. Sobald man es absendet, wird es in der Datenbank ausgespuckt. Also das funktioniert. nur weiß ich echt grade nicht, wie ich weitermachen soll bei der Suchausgabe, wie mir da dann was ausgespuckt wird.
Es wäre so toll, wenn mir wer helfen kann :x Ich hab irgendwie das Gefühl, dass die Lösung total einfach ist, ich dummerweise nur nicht drauf komme
-
Ich habe den Attributnamen "E-Mail" in der Tabelle zu "Email" geändert, nochmal alles geprüft, ob richtig geschrieben ist und dann ging es..
- thereisnospace reagierte darauf
- 1
-
Okey, ich hab es geschafft es trägt alle Attribute ein, komplett ohne Fehlermeldungen Ich danke euch trotzdem!!!
-
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..
-
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 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
-
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 -
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 -
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" -
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 -
-
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 32vor 1 Minute schrieb Gottlike:Füg mal noch ein
if ($db -> connect_errno)
{
printf("Verbindung fehlgeschlagen: %s\n", $db->connect_error);
exit();
}nach der Verbindung zur Datenbank ein. Und gib uns die Fehlermeldung durch.
-
Das ist grade aktuell mit der änderung von @Rienne
-
Gerade eben schrieb Rienne:
Fehlen in dem Beispielcode auch. Das ist nicht der Fehler. Er nutzt nicht die korrekten Namen für die Spalten und die beiden Klammern in Zeile 27 müssen weg, so wie @Gottlike geschrieben hat. Das sind zumindest die Fehler, die die Fehlermeldungen betreffen.
die beiden klammern hinter dem letzten ? habe ich ja weg gemacht
-
-
vor 1 Minute schrieb PVoss:
$db = mysqli_connect("localhost","","","projekt_clab");
Da fehlen Username (und evtl. Passwort) um zur Datenbank zu verbinden.
Habe kein Username und Passwort.. Und in der test datei ging das ja auch ohne :x
-
<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(isset($_POST["submit"])):
$nutzerID = $_POST['Nutzer_ID'];
$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',$nutzerID,$vorname,$nachname,$email,$telefonnummer,$raum,$geraet);
$absenden->execute();
endif;
?> -
vor 1 Minute schrieb Rienne:
Vergleich doch einfach mal deinen Code mit dem Testcode. Da fällt dann z.B. auf, dass dort die Namen und nicht die Placeholder hingehören.
Wie meinst du das?
-
Gerade eben schrieb Gottlike:
Wechsel mal noch das VALUES(?,?,?,?,?,?,?())" in VALUES(?,?,?,?,?,?,?)"
Die beiden Klammern wurden nur für die Funktion NOW() genutzt, die das aktuelle Datum + Zeit ausgeben
Sind leider immernoch da die Fehlermeldungen
-
Die hatte ich ganz am Anfang auch schon.. ?♀️
Suchausgabe über PHPscript von Datenbank
in Anwendungsentwickler und Programmierer
Geschrieben
Das mit der Eintragung klappt super, ohne Fehlermeldungen und nach dem absenden, ist das eingetragene auch in der db gespeichert.. Lediglich nur die Suche funktioniert nicht so, wie ich es gern hätte..