PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQL (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   Datenbankabfrage mit PHP. Script funktioniert nicht (http://www.selfphp.de/forum/showthread.php?t=26065)

MelJ 09.11.2017 17:42:09

Datenbankabfrage mit PHP. Script funktioniert nicht
 
Hallo,

ich habe folgendes Problem:

Ich würde gerne auf meiner Seite ein Formular erstellen, mit dem ich dann in der SQL Datenbank nach einem genauen Begriff suche.

Beispiel:

Suchbegriff Button Ergebnis

Hose 1295 "Suchen" vorhanden

Die Daten in mehreren Spalten stehen in meiner Datenbank

Letztendlich gibt man den Suchbegriff in ein Suchfeld ein und dann wird das Ergebnis ausgegeben, wichtig ist aber, dass nur Suchbegriffe ausgegeben werden, die identisch mit der Suche sind "wortlaut".

Ich habe übrigens den folgenden Code und jetzt bekomme ich auch keine Fehlermeldung mehr "Fehler bei der Abfrage"

Ich glaube, dass ich mein ganzes Script zerschossen habe.

PHP-Code:

<html>
<head>
<title>TITELNAME</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head><body>
<form action="PHPDATEI.php" method="post">
<input name="%" type="text" value"" size="16">
<input type="submit">
</form></body>
</html>

-------------------------------------------

<?php
$db 
mysqli_connect("HOST""USER""PASSWORD""DB");
?>
<?php
$db 
mysqli_connect("HOST""USER""PASSWORD""DB");
if(!
$db)
{
  exit(
"Verbindungsfehler: ".mysqli_connect_error());
}
?>
<?php
$Verbindung 
mysql_connect("HOST""USER""PASSWORD""DB");
$Suchbegriff "%";
$SQLString "SELECT * FROM TABELLE WHERE SPALTENNAME LIKE "%";
mysql_select_db("
Datenbankname", $Verbindung);
$Ergebnis = mysql_query($SQLString, $Verbindung);
if ($Ergebnis) {
$Zeilen = mysql_num_rows($Ergebnis);
for ($n = 0; $n < $Zeilen; $n++)
{
echo mysql_result($Ergebnis, $n, '"
$SQLString"');
}
}
else {
echo "
Error please try again later";
}
?>

Jemand ne Ahnung was ich da fabriziert habe ?

Danke für die Hilfe



Ich komme nicht weiter und hofffe auf Hilfe.

Gruß

MelJ

PS Ich bin echt ein absoluter Anfänger in diesem Bereich und allein das Script hat mich schon extreme Nerven gekostet.

chorn 10.11.2017 10:12:26

AW: Datenbankabfrage mit PHP. Script funktioniert nicht
 
Erstmal solltest du auf deinem Testsystem immer alle Fehler anzeigen lassen

PHP-Code:

ini_set('display_errors'1);
ini_set('display_startup_errors'1);
error_reporting(E_ALL); 

und dann guck dir nochmal an was du hier gepostet hast, dann siehst du ja vielleicht schon an den Farben, wo der Fehler liegt.

MelJ 10.11.2017 11:40:57

AW: Datenbankabfrage mit PHP. Script funktioniert nicht
 
Hallo,

vielen Dank für das Feedback !!!

Ich habe jetzt folgende Dinge geändert:

PHP-Code:

<?php
$db 
mysqli_connect("HOST""Benutzer""Passwort""Datenbank");
?>
<?php
$db 
mysqli_connect("HOST""Benutzer""Passwort""Datenbank");
if(!
$db)
{
  exit(
"Verbindungsfehler"):.mysqli_connect_error());
}
?>
<?php
$Verbindung 
mysql_connect("HOST""Benutzer""Passwort""Datenbank");
$Suchbegriff "%%";
$SQLString SELECT FROM Artikel WHERE Artikeldaten LIKE "%%";
mysql_select_db("DB123456",connection);
$Ergebnis mysql_query($SQLString$Verbindung);
if (
$Ergebnis) {
$Zeilen mysql_num_rows($Ergebnis);
for (
$n 0$n $Zeilen$n++)
{
echo 
mysql_result ($Ergebnis$n,);$SQLString
}
}
else {
echo 
"Error please try again later";
}
?>

-----------

Ich erhalte nun keine Fehlermeldungen mehr.

Ein Ergebnis kommt leider nicht.

Ich schaue nochmal was ich ändern muss.

chorn 10.11.2017 12:50:32

AW: Datenbankabfrage mit PHP. Script funktioniert nicht
 
Wenn du trotz Errorreporting keine Fehlermeldung bekommst, stimmt was mit deinem PHP oder deine Konfiguration nicht. Du kannst zur Not aber auch externe Tools benutzen, z.B.

https://3v4l.org/

Einfach deinen Quelltext da reinposten, links erscheint dann ein X in einem roten Kasten.

Weiteres Problem: Du fragst keine SQL-Fehler ab, das solltest du nach jedem Query tun, mit mysql_error().

Zudem sind die mysql_*-Funktionen veraltet und werden in aktuellen PHP-Versionen auch nicht mehr unterstützt. Lies dich besser in PDO ein, bevor du zu viel Kram programmierst den du nacher eh wieder ändern musst.

vt1816 10.11.2017 12:53:03

AW: Datenbankabfrage mit PHP. Script funktioniert nicht
 
Hallo und willkommen hier im Forum.

Zitat:

Zitat von MelJ (Beitrag 149399)
[..]
PHP-Code:

<?php
$db 
mysqli_connect("HOST""Benutzer""Passwort""Datenbank");
?>
<?php
$db 
mysqli_connect("HOST""Benutzer""Passwort""Datenbank");
if(!
$db)
{
  exit(
"Verbindungsfehler"):.mysqli_connect_error());
}
?>


Wieso ist das doppelt?


Zitat:

Zitat von MelJ (Beitrag 149399)
[..]
PHP-Code:

<?php
$db 
mysqli_connect("HOST""Benutzer""Passwort""Datenbank");
?>
<?php
$Verbindung 
mysql_connect("HOST""Benutzer""Passwort""Datenbank");
?>


Wieso arbeitetst Du mit mysqli und dann wieder mit mysql?
Beachte mysql ist veraltet. Nutze nur noch mysqli oder PDO.


Zitat:

Zitat von MelJ (Beitrag 149399)
[..]
PHP-Code:

<?php
..
?>
<?php
...
?>
<?php
..
?>


Warum? Einmal auf und einmal zu sollte reichen.

Schalte - wie von chorn - empfohlen die Fehleranzeige ein bzw. höher.
PHP-Code:

<?php
ini_set
('display_errors'1);
ini_set('display_startup_errors'1);
error_reporting(E_ALL);  

// ab hier dann Dein Code
?>

PS: Bitte nutze zukünftig die foreneigen Tags zu besseren Lesbarkeit Deine Codes.

sysop 13.11.2017 09:35:50

AW: Datenbankabfrage mit PHP. Script funktioniert nicht
 
PHP-Code:

$SQLString SELECT FROM Artikel WHERE Artikeldaten LIKE "%%"

Syntax?
%% soll was suchen?

Grundlagen!


Alle Zeitangaben in WEZ +2. Es ist jetzt 08:06:31 Uhr.

Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.