PHP-MYSQL-HTML Suche mit mehreren filtern/ Felder
Ich habe eine MySQL Datenbank mit 5 Tabellen
- companies
- place
- category
- sub-category
- company-sub-category
'companies' consist of 6 column:
- company_id (**PK**)
- company name
- place_id (**FK**)
- address
- cat_id (**FK**)
- company_subcat_id (**FK**)
'place' consist of 2 column:
- place_id (**PK**)
- place_name (**FK**)
'category' consist of 2 column:
- cat_id (**PK**)
- cat_name (**FK**)
'sub-category' consist of 2 column:
- sub-cat_id(**PK**)
- sub-cat_name (**FK**)
'company-sub-category' consist of 3 column:
- company_subcat_id (**PK**)
- company_id (**FK**)
- sub-cat_id (**FK**)
Möchte ich machen :-
-
Suche mit PHP HTML mit Hilfe der Datenbank in die MySQL.
-
Dem Suchformular hat auch einen Filter wie gezeigt in der html unter.
-
ich würde gerne die Ergebnisse enthalten den Namen des Unternehmens
-
Ich würde auch gerne die Ergebnisse werden in eine andere Seite "search-results.html"
Ich bin ziemlich neu in php und bin mir nicht sicher wie Sie gehen über das Suchformular Arbeit.
HTML:
<!-- Search -->
<nav id="c-menu--slide-top" class="c-menu c-menu--slide-top">
<button class="c-menu__close" style="float: right;background: transparent;font-size: 45px;">
<strong>x</strong></button>
<ul class="c-menu__items">
<li class="c-menu__item">
<form action="" target="search-results.html" method="post" id="nl-form" class="nl-form">
I am looking for
<select name="category" id="category">
<option value="0" selected>category choice</option>
<option value="1">Women</option>
<option value="2">Men</option>
<option value="3">Kids</option>
</select>'s
<br />
<select name="sub-category" id="sub-category">
<option value="" selected>-sub-category</option>
<option value="1">Jackets</option>
<option value="2">Tops</option>
<option value="3">Bottoms</option>
<option value="4">Accesories</option>
<option value="5">Undergarments</option>
<option value="6">Shoes</option>
</select>
<br />around
<select name="price_range" id="price_range">
<option value="0" selected>price range</option>
<option value="$">$</option>
<option value="$$">$ $</option>
<option value="$$$">$ $ $</option>
<option value="$$$$">$ $ $ $</option>
</select>
eatery
<br /> and would prefer
<select name="pickup_choice" id="pickup_choice">
<option value="0" selected>prefered chioce</option>
<option value="1">Home Delivery</option>
<option value="2">Self pick-up</option>
</select>
<br />at
<input type="text" value="" name="place" placeholder="location" data-subline=" eg.<em>little India</em> or <em>Chinatown</em>etc"/>
<div class="nl-submit-wrap">
<button class="nl-submit" type="submit" href="search-result.html" name="submit"><a href="search-result.html"> Find a store</a></button>
</div>
<div class="nl-overlay"></div>
</form>
<script src="js/nlform.js"></script>
</li>
</ul>
</nav>
<!--End of Search-->
Dies ist die html-Datei, die ich benutzt habe, ich habe nicht enthalten die CSS-und JS-Datei, wie ich dachte, wäre nicht nötig, aber wenn jemand Lust hätte mir zu zeigen, Sag es mir und ich werde mehr als glücklich, es zu tun.
Ihre Hilfe wird sehr geschätzt und ich danke Ihnen im Voraus.
dies ist das PHP, dass ich kam
<?php
$whereClauses = array();
if (! empty($_POST['category'])) $whereClauses[] ="category='".//**mysql_real_escape_string($_POST['category'])."'";
if (! empty($_POST['sub_category']))
$whereClauses[] ="category='".mysql_real_escape_string($_POST['sub_category'])."'";
$where = '';
if (! empty($_POST['price_range']))
$whereClauses[] ="price_range='".mysql_real_escape_string($_POST['price_range'])."'";
$where = '';
if (! empty($_POST['pickup_choice']))
$whereClauses[] ="pickup_choice='".mysql_real_escape_string($_POST['pickup_choice'])."'";
$where = '';
if (count($whereClauses) > 0)
{
$where = ' WHERE '.implode(' AND ',$whereClauses);
}
$sql = mysql_query("SELECT * FROM mytable ORDER BY id DESC $limit" .$where);//**
$result=mysql_query($sql);
while ($row = mysql_fetch_assoc($result)) {
echo $row['cuisine'];
echo $row['Jobs'];
}
?>
<!-- end snippet -->
und hier ist 'search-result.html" Seite :_
</head>
<body>
<div class="container">
<div class="well well-sm list-grid-toggle">
<strong>Category Title</strong>
<div class="btn-group">
<a href="#" id="list" class="btn btn-default btn-sm"><span class="glyphicon glyphicon-th-list">
</span>List</a> <a href="#" id="grid" class="btn btn-default btn-sm"><span
class="glyphicon glyphicon-th"></span>Grid</a>
</div>
</div>
<div id="products" class="row list-group">
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail comany-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Company Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 company-link-btn">
<a class="btn btn-success company-link" href="company-profile.html">View Menu</a>
</div>
</div>
</div>
</div>
</div>
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail company-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Company Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 company-link-btn">
<a class="btn btn-success company-link" href="company-profile.html">View Menu</a>
</div>
</div>
</div>
</div>
</div>
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail company-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Company Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 company-link-btn">
<a class="btn btn-success company-link" href="company-profile.html">View Menu</a>
</div>
</div>
</div>
</div>
</div>
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail restaurant-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Restaurant Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 restaurant-link-btn">
<a class="btn btn-success restaurant-link" href="restaurant-profile.html">View Menu</a>
</div>
</div>
</div>
</div>
</div>
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail restaurant-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Company Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 company-link-btn">
<a class="btn btn-success company-link" href="restaurant-profile.html">View product</a>
</div>
</div>
</div>
</div>
</div>
<div class="item col-xs-6 col-lg-4">
<div class="thumbnail company-detail">
<img class="group list-group-image" src="http://placehold.it/400x250/000/fff" alt="" />
<div class="caption">
<h4 class="group inner list-group-item-heading">
Company Name</h4>
<p class="group inner list-group-item-text">
Product description... Lorem ipsum dolor sit amet, consectetuer adipiscing elit,
sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.</p>
<div class="row">
<div class="col-xs-12 col-md-6">
<p class="lead">
$$$$</p>
</div>
<div class="col-xs-12 col-md-6 company-link-btn">
<a class="btn btn-success company-link" href="company-profile.html">View product</a>
</div>
</div>
</div>
</div>
</div>
</div>
<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script>
<script src="js/search-result.js"></script>
</body>
</html>
InformationsquelleAutor mods | 2016-07-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
ändern
<form action="" target="search-results.html"
ändern
<form action="search-results.html"
Aktion, ist die Seite zu Unterwerfen, Ziel definiert werden sollte, in eine neue Seite oder derselben Seite Fenster.
Und über den Absenden-button, keine Notwendigkeit, den link in der Schaltfläche oder im text. Der submit-button ist verlinkt auf das Formular und übermitteln, was Sie in den
action
- Attribut im form-tag.Ändern
<button class="nl-submit" type="submit" href="search-result.html" name="submit"><a href="search-result.html"> Find a store</a></button>
zu:
<button class="nl-submit" type="submit" name="submit">Find a store</button>
Hilft das?
Auch die übermittlung der Formular-Daten zu einer HTML-Seite wird nicht funktionieren. Es wird nur das laden der HTML-Seite. Benötigen Sie eine PHP-Seite zu extrahieren, die Daten des Formulars, die Datenbank durchsuchen und dann auf der Seite anzuzeigen. Versuchen Sie hier lernen: W3schools PHP-Formular-handling-tutorial
EDIT:
Stack-Überlauf ist hier um Ihnen zu helfen mit der Programmierung Probleme. Nicht die Programmierung für Sie. Sie sollten sich wirklich einige tutorials über PHP. Werfen Sie einen Blick auf W3Schools. Möchten Sie vielleicht zu Lesen, auf SQL auch. (W3Schools). Und eine Kombination von PHP und SQL: W3Schools PHP SQL.
Ihre php-code ist voller Fehler und sollte nicht verwendet werden. Dinge zu beachten, wenn Sie versuchen, um ein neues zu schreiben: Benutze mysqli anstatt der alten mysql veraltet. Wo ist die Datenbank Verbindung? Sie versucht zu tun mysql_query ZWEIMAL. Dies führt zu einem Fehler.
Wenn Sie Probleme haben, fühlen Sie sich frei, zu Fragen. Aber bitte, versuchen zu lernen, etwas PHP/SQL selbst. Es gibt viele gute und einfache tutorials zu diesem, wie ich es verbunden und wie können Sie google.
Glück.