php.de

Zurück   php.de > Lösungen durch Skripte > Scriptbörse

Scriptbörse PHP Lösungen für nen schmalen Taler

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.01.2010, 14:27  
Neuer Benutzer
 
Registriert seit: 27.01.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
Janine befindet sich auf einem aufstrebenden Ast
Standard Suchformular mehrspaltige Abfrage

Hallo zusammen,

ich hoffe ihr könnt mir bei der verzweifelten Suche helfen.

Folgendes Problem:
Datenbank mit Benutzern
Inhalt Bundesland, Nickname, Stadt, Alter usw.

Nun wollte ich eine Seite erstellen, ähnlich wie bei Singlebörsen, wo man suchen kann. Dieses Formular muß also mehrspaltig sein, mit Aufklappmenüs usw., Auswahl ob nur Profile mit Bild anzeigen und noch mehr solche Auswahldinger.

Mein Problem, wo ich seit Tagen dran hänge, ist nicht die index.php, wo man auswählt, sondern die Übergabe an die suche.php. Übergabe geht, aber nur ein Feld.

Kennt jemand von Euch vielleicht ein gutes Tutorial mit mehrspaltigen Suchabfragen, oder sogar ein fertiges Script?

Wäre um jede Hilfe dankbar.

Janine
Janine ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 27.01.2010, 15:15  
Erfahrener Benutzer
 
Registriert seit: 07.12.2009
Beiträge: 843
PHP-Kenntnisse:
Fortgeschritten
chorn befindet sich auf einem aufstrebenden Ast
Standard

Vllt. hast du den Feldern einfach immer den gleichen Namen gegeben. Aber mal so grundsätzlich: Ohne Code kann dir keiner sagen was du falsch gemacht hast. das wird sonst zum Ratespiel.
chorn ist offline   Mit Zitat antworten
Alt 27.01.2010, 15:41  
Neuer Benutzer
 
Registriert seit: 27.01.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
Janine befindet sich auf einem aufstrebenden Ast
Standard

Ok fangen wir mal an... das ist meine index.php Habe das jetzt nur mal etwas kleiner gemacht, normal will ich aber mehr Suchabfragen drin haben.

PHP-Code:
<form id="suche" name="suche" method="post" action="suche.php">
  <
p>
    <
select name="sex" id="sex">
      <
option value="männlich">männlich</option>
      <
option value="weiblich">weiblich</option>
    </
select>
    <
select name="bland" id="bland">
      <
option value="Sachsen">Sachsen</option>
      <
option value="Thüringen">Thüringen</option>
      <
option value="Sachsen-Anhalt">Sachsen-Anhalt</option>
    </
select>
  </
p>
  <
p>
    <
input type="checkbox" name="pic" id="pic" />
  
Nur mit Bild</p>
  <
p>
    <
input type="submit" name="submit" id="submit" value="Senden" />
  </
p>
</
form
und das ist meine Ergebnisseite suche.php
ich mach jetzt nur mal den Code für die Abfrage rein, hoffe das reicht.

PHP-Code:
$colname_userdaten "-1"//hier muß ja mehr rein als nur Bundesland, nur wie?
if (isset($_POST['bland'])) {
  
$colname_userdaten $_POST['bland'];
}
mysql_select_db($database_server$server);
$query_userdaten sprintf("SELECT bland, Nickname, age FROM userdata WHERE bland = %s ORDER BY Nickname ASC"GetSQLValueString($colname_userdaten"text"));
$query_limit_userdaten sprintf("%s LIMIT %d, %d"$query_userdaten$startRow_userdaten$maxRows_userdaten);
$userdaten mysql_query($query_limit_userdaten$server) or die(mysql_error());
$row_userdaten mysql_fetch_assoc($userdaten); 
Janine ist offline   Mit Zitat antworten
Alt 27.01.2010, 15:56  
Erfahrener Benutzer
 
Registriert seit: 07.12.2009
Beiträge: 843
PHP-Kenntnisse:
Fortgeschritten
chorn befindet sich auf einem aufstrebenden Ast
Standard

Du musst dein SQL-Statement erweitern, du brauchst nach dem WHERE mehrere Bedingungen

Code:
WHERE sex = "männlich" OR bland = "Sachsen" ...
chorn ist offline   Mit Zitat antworten
Alt 27.01.2010, 16:04  
Neuer Benutzer
 
Registriert seit: 27.01.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
Janine befindet sich auf einem aufstrebenden Ast
Standard

Sorry das versteh ich nicht ganz.

Also wenn ich da WHERE sex = "männlich" OR bland = "Sachsen" ... reinmache dann sucht er doch nur nach Sachsen, oder?

Die Anfrage vom Formular kommt doch mit diesem
PHP-Code:
$colname_userdaten "-1"//hier muß ja mehr rein als nur Bundesland, nur wie?
if (isset($_POST['bland'])) {
  
$colname_userdaten $_POST['bland'];

Oder bin ich da völlig falsch?
Janine ist offline   Mit Zitat antworten
Alt 27.01.2010, 16:25  
Erfahrener Benutzer
 
Registriert seit: 07.12.2009
Beiträge: 843
PHP-Kenntnisse:
Fortgeschritten
chorn befindet sich auf einem aufstrebenden Ast
Standard

lass dir mal mit print_r() das ganze Formular, also alles was in $_POST drinsteht ausgeben. Du musst das halt entsprechend deinem Formular anpassen. Soll nach mehreren Geschlechtern gesucht werden, bring mehrere in dein Statement ein. Soll nach mehreren Bundesländern gesucht werden, bring mehrere in dein Statement ein. Die drei Punkte in meinem Code heissen, du kannst das nach deinen eigenen Vorstellungen erweitern. Du kannst quasi beliebig viele Spaltenname/Wert-Paare als Bedingung angeben.

PHP: print_r - Manual
chorn ist offline   Mit Zitat antworten
Alt 27.01.2010, 18:43  
Neuer Benutzer
 
Registriert seit: 27.01.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
Janine befindet sich auf einem aufstrebenden Ast
Standard

Kann dir leider nicht folgen wohin und was da rein muß.

Also das Formular ist klar, dort sind ja schon mehrere ID mit Namen vergeben.

In der suche.php ist nur EINE Abfrage
PHP-Code:
$colname_userdaten "-1"//hier muß ja mehr rein als nur Bundesland, nur wie?
if (isset($_POST['bland'])) {
  
$colname_userdaten $_POST['bland'];

Es sollen aber nicht nur bland sondern eben mehrere Dinge vom Formular übernommen werden.

Wie muß das denn dann von den Code hier oben aussehen? Hier frage ich lediglich ja nur Bundesland ab und nix anderes weiter aus der Suchmaske.

Komme nicht ganz damit zurecht wie sich das verhält
Janine ist offline   Mit Zitat antworten
Alt 28.01.2010, 03:05  
Erfahrener Benutzer
 
Benutzerbild von leonv
 
Registriert seit: 12.01.2009
Beiträge: 344
PHP-Kenntnisse:
Fortgeschritten
leonv befindet sich auf einem aufstrebenden Ast
Standard

Der Ansatz ist schon mal nicht schlecht, da du eine strikte Typen-Überprüfung durchführst.

Du hast jetzt mehrere Möglichkeiten:
a) Formular-Daten in ein Array z.B. $colname_userdaten[] schreiben
b) Jedes Feld in eine eigene Variable
c) Formular-Daten direkt in die Funktion GetSQLValueString() einfügen
z.B. GetSQLValueString($_POST["bland"], "text")

Die Variante c) erzeugt den kleinsten Code, weshalb ich mit dieser weiter mache.

Unter $query_userdata gibst du unter WHERE ... an, welche Felder bei der Suche bestimmte Werte enthalten sollen, im Moment fragst du aber nur ein Feld ab, was du mit "AND", "OR" usw. erweitern kannst.

Hier ein Beispiel: mysql_query mit mehreren Bedingungen und sprintf.
PHP-Code:
sprintf(
   
"SELECT * FROM table WHERE bland = %s AND stadt = %s",
   
GetSQLValueString($_POST["bland"], "text"),
   
GetSQLValueString($_POST["stadt"], "text")
); 
PHP-sprintf
MySQL-Where
Beispiel mit Abfrage mehrerer Felder und GetSQLValueString
__________________
Kreativität und Schöpfung durch Chaos und Ordnung.
leonv ist offline   Mit Zitat antworten
Alt 31.01.2010, 22:18  
Neuer Benutzer
 
Registriert seit: 27.01.2010
Beiträge: 19
PHP-Kenntnisse:
Anfänger
Janine befindet sich auf einem aufstrebenden Ast
Standard

Hab nun alles durchprobiert, leider schaff ich es wohl nicht. Bin wohl doch blond.
Janine ist offline   Mit Zitat antworten
Alt 31.01.2010, 23:05  
Erfahrener Benutzer
 
Registriert seit: 05.02.2009
Beiträge: 1.401
PHP-Kenntnisse:
Fortgeschritten
Destruction ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Dann können wir dir auch nicht helfen.
Bezahl jmd. dafür oder frag ob es jmd. kostenlos für dich macht.
__________________
"Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]
Destruction 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
Abfrage von einer Abfrage Datenbanken 5 27.01.2011 23:31
Problem mit Abfrage - join, inner join, distinct? Gachet01 Datenbanken 2 27.01.2011 06:49
Scriptsuche [Erledigt] SQL- Abfrage über 2 tabellen ejim Scriptbörse 1 17.07.2009 21:10
Select Abfrage von zwei Eigenschaften BlackBroom Datenbanken 5 02.06.2009 11:29
Suchformular --> Abfrage erstellen wepse PHP Tipps 2009 3 18.03.2009 23:47
SQL Abfrage ohne DESC langsam Thisi Datenbanken 5 07.01.2009 09:53
Wiemache ich eine Abfrage über 3 Tabellen??? djscaleo Datenbanken 8 05.01.2009 10:46
MySQL - Fehler in einfacher Abfrage oden Datenbanken 11 03.01.2009 20:03
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
[Erledigt] IF() abfrage in variable packen PHP Tipps 2005 14 01.04.2005 17:23
Abfrage von Char-Feldern Datenbanken 9 04.02.2005 14:06
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22
Abfrage funktioniert zwar, aber nicht korrekt Datenbanken 2 16.08.2004 09:10
2 Tabellen 1 Abfrage nilsfeld Datenbanken 6 11.08.2004 11:18
Abfrage aus DB noch mal ausgeben und Abfrage aus mehrern Tab PHP Tipps 2004 4 12.07.2004 15:00

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php suchformular erstellen, http://www.php.de/scriptboerse/63846-suchformular-mehrspaltige-abfrage.html, suchformular php, php suchformular, suchformular erstellen php, php suchformular tutorial, php script suchformular, html select mehrspaltig, php suchformular mehrere, html suchformular, suchformular php erstellen, suchformular mit php erstellen, ajax suchformular mehrere, suchformular php script, php mysql suchformular, mehrspaltiges formular html, sql datensatz suchformular php, suchform php, suchformular php code, suchformular für datenbank

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:58 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