php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-09-2010, 22:17
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard PHP und mysql Suche funktioniert nur mit festen Werten.

Hallo @ all

ich habe eine Frage die vermutlich schon tausende gestellt haben jedoch hänge ich nun kurz vor dem Ende.

Folgendes Problem: Ich habe ein Datenbank mit einer Tabelle "Haendlerverzeichnis" in dieser Tabelle stehen u.a. Name Ort PLZ usw.
nun möchte ich mir diese Daten mit einer Suchfunktion ausgeben lassen. Dies funktioniert auch! Und zwar habe ich dazu folgendes geschrieben.

PHP-Code:
Seitenname= abfrage1.php

<?php
    
include("dbconnect.php");
?>


<?php
                                                                                    
                                                                                                                                                        $query 
mysql_query("SELECT * from Haendlerverzeichnis WHERE PLZ ='$_GET[PLZ]' or Ort ='$_GET[Ort]'");

while(
$row mysql_fetch_assoc($query ))
        

            echo 
$row["name"]." ";
            echo 
$row["strasse"].", ";
            echo 
$row["PLZ"]." ";
            echo 
$row["Ort"]." <br />"
}

?>
Für die Suche habe ich noch eine html Seite mit folgendem Code:

<form action ="abfrage1.php" method "GET">
<input type="text" name="PLZ">
<input type="search" name="Ort">
<input type ="submit" >
<br />
</form>

So und nun mein Problem wo ich seit 2 Tagen tutorials lese. Ich möchte gerne das wenn ein User nach der PLZ sucht (BSP: 91074 aber nur noch 9107 weis) er alle Daten ausgegeben bekommt die mit 9107 beginnen also auch 91074 usw. Mit Platzhalter % usw bekomme ich etweder Fehler oder gar keine Ausgabe. wisst ihr einen Rat? Danke.

Geändert von MrFlodder (05-09-2010 um 22:43 Uhr)
Mit Zitat antworten
  #2 (permalink)  
Alt 05-09-2010, 22:37
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Beispielcode bitte in [PHP]-Tags posten;

Und „ich bekomme Fehler“ ist eine Aussage, mit der sich gar nichts anfangen lässt. Zeig' den Code, der den Fehler verursacht, mit welchen Eingabedaten - und vor allem, zitiere die Fehlermeldung im Wortlaut.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 05-09-2010, 22:42
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard

Hallo um ehrlich zu sein weis ich gar nich wie man in PHP Tags postet ich habe noch nie eine Frage in einem Forum gestellt.

Die Fehler welche Auftreten sind die, dass ich gar keine Ausgabe mehr bekomme (Also ne leere Seite) oder das meine Schleife falsch ist wenn ich folgendes ändern tue:
PHP-Code:
$query mysql_query("SELECT * from Haendlerverzeichnis WHERE PLZ ='$_GET[PLZ]' or `Ort` LIKE '%$_GET 'Ort'%'"); 
ähm ja hab gefunden wie man in Tags Postet. soll ich nun dennoch alles nochmal schreiben?

PHP-Code:
Warning:  mysql_fetch_assoc() expects parameter 1 to be resourceboolean given in C:xampphtdocselektroluxabfrage1.php on line 20 
Mit Zitat antworten
  #4 (permalink)  
Alt 05-09-2010, 22:48
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.595
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Da gibts viele Fehler:

1. Man sollte kein SELECT * verwenden, sondern genau die Spalten auswählen, die man haben will (auch wenn es alle sind).

2. Du verwendest direkt Benutzereingaben ($_GET) im Query. Das ermöglicht sehr leicht SQL Injections, eine der meist ausgenutzten und sehr gefährlichen Sicherheitslücken.

3. Du verwendest unkoordiniert Hochkommas im SQL-Code. Ein String wird durch genau zwei Hochkommas begrenzt, nicht mehr und nicht weniger:

Richtig: 'Ein String'
Falsch: 'Ein 'String''

4. Du wertest keine Fehler aus sondern gehst immer fix davon aus, dass die Datenbankabfrage erfolgreich ist. Wenn sie dann doch mal fehlschlägt und dies ignoriert wird, kann das Programm merkwürdig reagieren oder sogar Daten unbrauchbar machen.

Geändert von h3ll (05-09-2010 um 22:52 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 05-09-2010, 22:50
MrY
 Registrierter Benutzer
Links : Onlinestatus : MrY ist offline
Registriert seit: Sep 2010
Beiträge: 1
MrY befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:

$PostLz 
$_GET[PLZ] ;
$MyOrt $_GET[Ort];

$query mysql_query("SELECT * from Haendlerverzeichnis WHERE PLZ ='%"$PostLz ."%' or Ort ='%"$MyOrt ."%'"); 
sieht echo $query gut aus?


PS: bitte Comment von h3ll beachten
Mit Zitat antworten
  #6 (permalink)  
Alt 05-09-2010, 22:51
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard

Hallo Danke für den Sicherheitshinweis und für den Hinweis mit meinen Hochkommas aber wie hilft es mir das Problem zu lösen.

Natürlich ist es kein Thema * durch die Spaltennamen zu ersetzen und das mit der Sicherheitslücke schau ich mir an (Versprochen).
Mit Zitat antworten
  #7 (permalink)  
Alt 05-09-2010, 22:54
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.595
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MrFlodder Beitrag anzeigen
Hallo Danke für den Sicherheitshinweis und für den Hinweis mit meinen Hochkommas aber wie hilft es mir das Problem zu lösen.
Ehmm... du meinst jetzt nicht ernsthaft, dass dieser Code funktionieren wird, wenn du die Fehler nicht korrigierst?

Somit gesehen: Wenn du das Problem lösen willst, behebe diese Fehler. Wenn du das Problem nicht lösen willst, lass es halt und wir stellen die Hilfe ein.
Mit Zitat antworten
  #8 (permalink)  
Alt 05-09-2010, 22:57
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard

Moment ich war noch am lesen als du deinen nächsten text schon geschrieben hast lass mich mal basteln. bisher bleibt jedoch die Ausgabe ( echo $query) leer dennoch Danke und hoffe du hilfst weiter
Mit Zitat antworten
  #9 (permalink)  
Alt 05-09-2010, 22:58
h3ll
 Registrierter Benutzer
Links : Onlinestatus : h3ll ist offline
Registriert seit: Mar 2008
Beiträge: 3.595
h3ll befindet sich auf einem aufstrebenden Ast
Standard

Echo ist auch ungeeignet dafür. Nimm lieber var_dump() für Debug-Ausgaben.
Mit Zitat antworten
  #10 (permalink)  
Alt 05-09-2010, 23:01
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard

OK Danke jetzt musst du mir etwas Zeit geben weil ich habe bis zu diesen Zeitpunkt noch nie mit PHP so intensiuv was tun müssen außer mal nen Kontaktformular. Danke
Mit Zitat antworten
  #11 (permalink)  
Alt 05-09-2010, 23:29
MrFlodder
 Registrierter Benutzer
Links : Onlinestatus : MrFlodder ist offline
Registriert seit: Sep 2010
Beiträge: 6
MrFlodder befindet sich auf einem aufstrebenden Ast
Standard

OK jetzt hast du mich völlig Platt gemacht (Sorry für den Ausdruck)

Also ich verstehe deine Bedenken wegen dem sicherheitsrissiko aber z:Z läuft das alles nur auf xamm local auf meinen Rechner und zum anderen muss ich mir dazu wohl noch viel anschaun. Methode Post funktiniert leider für die Abfrage nicht dies habe ich schon versucht.

Und mit var_dump bekomme ich leider keine Ausgabe mehr. Aber dennoch Danke
Mit Zitat antworten
  #12 (permalink)  
Alt 06-09-2010, 00:13
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von MrFlodder Beitrag anzeigen
Methode Post funktiniert leider für die Abfrage nicht dies habe ich schon versucht.
Also wenn du Fortschritte machen willst, musst du erst mal diese Einstellung ablegen: Kurz irgendwas versucht, hat nicht „gefunzt“ - dann vergesse ich das halt wieder, und wende mich dem nächsten zu.

Wenn es nicht funktioniert wie erwartet - dann untersuche doch erst mal, warum nicht.

Wir unterstützen dabei gerne (sofern es nicht um allzu triviale Sachen geht, für die Grundlagen gibt's genug Tutorials) - aber das erfordert dann auch präzise Problembeschreibungen. Nur mit habe ich probiert, hat aber nicht geklappt können wir dir auch nicht weiterhelfen.


Und P.S.: Bitte noch den Code umbrechen (Zeilenumbrüche einfügen), damit man hier nicht meterweit quer scrollen muss.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
php suche mysql


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
MySQL-UPDATE mit 2 Werten in einer Spalte Overtone PHP Developer Forum 2 18-09-2007 16:39
MySQL-Select mit Werten aus Array pbundschuh PHP Developer Forum 2 20-07-2006 15:14
Ausgabe 2 letzten Werten aus einer MYSQL-DB :/ Garret SQL / Datenbanken 3 07-06-2006 22:47
MySQL in einen festen Array einlesen |-ZeroCool-| PHP Developer Forum 2 04-04-2006 11:13
Suche nach bestimmten Werten illusion PHP Developer Forum 3 20-10-2005 12:37

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre 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


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:48 Uhr.