php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.02.2005, 19:23  
Gast
 
Beiträge: n/a
Standard [Erledigt] Suchfunktion Datenbank

Hi,

ich richte gerade eine Suchfunktion für meine Datenbank ein.

Der Code:
PHP-Code:
<?
$suche 
$HTTP_POST_VARS['suche'];

//Formularfeld
echo "<form name=form1 method=post action=\"$PHP_SELF\">\n";
echo 
"<input name=suche type=text id=suche>\n";
echo 
"  <input type=submit name=Submit value=Senden>\n";
echo 
"  <input type=reset name=Submit value=Zur&uuml;cksetzen>\n</form>";

//Verbindung
include 'db_connect.inc';
$sqldatabase mysql_pconnect($host,$user,$pwd) or die('[b]#'.mysql_errno().':[/b] '.mysql_error());
                
mysql_select_db($dbname$sqldatabase) or die('[b]#'.mysql_errno().':[/b] '.mysql_error());
//Anzeigen
$query mysql_query("SELECT * FROM ".$tblname." WHERE Artist!='' AND Songname='".$_POST['$suche']."'") or die("Can't"); 
while(
$data mysql_fetch_assoc($query)) {
print 
$data['Artist'];
}

?>
Er bringt keine Fehler nichts, jedoch zeigt er die gefundenen Ergebnisse nicht an! Ich bekomme einfach eine leere Site.
An was könnte das liegen? Ist etwas falsch?
Würde mich über Antworten freuen!
mfG
web4
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 09.02.2005, 19:28  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Code:
$_POST['$suche']
muss so aussehen:
Code:
$_POST['suche']
Ohne $...

Btw.
16.14. Warum soll ich nicht SELECT * schreiben?
http://www.php-faq.de/q/q-sql-select.html
Corvin ist offline   Mit Zitat antworten
Alt 09.02.2005, 19:29  
Gast
 
Beiträge: n/a
Standard

$_POST['$suche'] -> $_POST['suche']

Gruß
phpfan
  Mit Zitat antworten
Alt 09.02.2005, 19:38  
Gast
 
Beiträge: n/a
Standard

woher kommt $tblname ??
  Mit Zitat antworten
Alt 09.02.2005, 19:39  
Gast
 
Beiträge: n/a
Standard

funzt leider trotzdem nicht...dort wo ['suche'] steht, steht der Begriff welchen man sucht, nicht wahr? ich habe auch schon ein Begriff eingegeben welcher 100% existiert. aber auch dann wird nichts angezeigt.
danke im voraus
mfg
web4
  Mit Zitat antworten
Alt 09.02.2005, 19:43  
Erfahrener Benutzer
 
Registriert seit: 02.08.2004
Beiträge: 209
PHP-Kenntnisse:
Fortgeschritten
Chance
Chance eine Nachricht über ICQ schicken
Standard

Irgendwie vermischt du Register_Globals=on mit Register_Globals=off Programierstiel...
Und die neue und alte Übergabevariante der Post Daten.

Der Fehler liegt übrigens darin, das das ganze falsch definiert ist...
$suche = $HTTP_POST_VARS['suche'];
$_POST['$suche'];
Bei übergabe von z.B. "Test" als Suche, würde er nach dem Inhalt suche, was in der Postvariable "Test" steht.

Hab das Script um eine Suchmodifikationsmöglichkeit ergänzt.

PHP-Code:
<?
//Formularfeld
echo "<form name=form1 method=post action='$_SERVER['PHP_SELF']'>\n";
echo 
"<input name=suche type=text id=suche value='$_POST['suche']'>\n";
echo 
"  <input type=submit name=Submit value='Senden'>\n";
echo 
"  <input type=reset name=Submit value=Zur&amp;uuml;cksetzen>\n</form>";

//Verbindung
include 'db_connect.inc';
$sqldatabase mysql_pconnect($host,$user,$pwd) or die('[b]#'.mysql_errno().':[/b] '.mysql_error());
                
mysql_select_db($dbname$sqldatabase) or die('[b]#'.mysql_errno().':[/b] '.mysql_error());
//Anzeigen
$query mysql_query("SELECT * FROM ".$tblname." WHERE Artist!='' AND Songname='".$_POST['suche']."'") or die("Can't");
while(
$data mysql_fetch_assoc($query)) {
print 
$data['Artist'];
}
?>
__________________
Web-Entwickler/-in bei der IAK GmbH
Chance ist offline   Mit Zitat antworten
Alt 09.02.2005, 19:46  
Gast
 
Beiträge: n/a
Standard

und immernoch steht die frage woher die variable $tblname kommt wenn die leer ist kannst du suchen bis der phpkern glüht

desweiteren sollte sein programmierstil sch*** egal sein ( ich meine register globals on or off
für ein sql injection steht das teil ja gerade als parade beispiel
$_POST ohne überprüfung direkt in eine sql anweisung schreiben ... lalalala

gruss J
  Mit Zitat antworten
Alt 09.02.2005, 19:51  
Erfahrener Benutzer
 
Registriert seit: 02.08.2004
Beiträge: 209
PHP-Kenntnisse:
Fortgeschritten
Chance
Chance eine Nachricht über ICQ schicken
Standard

Das register_globals on oder off ist, ist mir auch egal, nur sollte man dabei beides nicht vermischen...
__________________
Web-Entwickler/-in bei der IAK GmbH
Chance ist offline   Mit Zitat antworten
Alt 09.02.2005, 20:29  
Gast
 
Beiträge: n/a
Standard

@ J33d3X: $tblname kommt von der datei die ich oben include :wink:
db_connect.inc!

vielen dank chance für deine hilfe!
er macht bei mir jedoch noch bei der dritten zeile probleme:

PHP-Code:
echo "<form name=form1 method=post action='$_SERVER['PHP_SELF']'>\n"
Ich habe das Gefühl, dass es ihn stört, dass das ganze im <form> tag steht ?! Wie könnte man das umschreiben?
Folgender Fehler wird ausgegeben:
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in C:\Programme\Apache Group\Apache2\htdocs\database\test.php on line 3


Vielen Dank im voraus
mfG
web4
  Mit Zitat antworten
Alt 09.02.2005, 20:40  
Erfahrener Benutzer
 
Registriert seit: 02.04.2008
Beiträge: 2.603
Corvin befindet sich auf einem aufstrebenden Ast
Standard

Das muss so aussehen:
PHP-Code:
<?php
echo "<form name=form1 method=post action='" .$_SERVER['PHP_SELF'] ."'>\n"
?>
Corvin ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
datenbank auf andere kopieren geht nicht! Kevin Datenbanken 1 18.08.2007 23:20
Suchfunktion für die Homepage? Was muss der Anfänger wissen? PHP Tipps 2005-2 1 11.10.2005 18:39
Mehrere Anwendungen eine Datenbank... Datenbanken 5 15.08.2005 11:22
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:33
[Erledigt] mysql datenbank anlegen...aber WIE??? PHP Tipps 2005-2 0 05.08.2005 19:33
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:32
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:31
[Erledigt] mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
mysql datenbank anlegen...aber WIE??? Datenbanken 0 05.08.2005 19:29
Datenbank verschieben PHP Tipps 2005-2 4 03.08.2005 15:45
Bilder aus der Datenbank Skazi Datenbanken 2 09.02.2005 13:42
Eintrag in Datenbank mittels Formular? Datenbanken 5 16.12.2004 17:36
INSERT in die Datenbank PHP Tipps 2004-2 4 13.12.2004 19:51
Suchfunktion in einer Datenbank?? PHP Tipps 2004 3 07.07.2004 10:42

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php suchfunktion datenbank, suchfunktion datenbank, suchfunktion datenbank php, datenbank suchfunktion, suchfunktion mit datenbank und php, suchfunktion für die datenbank mit php, suchfunktion datanbank php, echo \<input type=\\\submit\\\ name=\\\suche\\\ value=\\\, suchfunktion für datenbank php code, php suchfunktion auf datenbank, php suchfunktion - datenbank, suchfunktion eingabefelder datenbank, datenbanken suchfunktion

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:18 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.