| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
puiu
Data înscrierii: 16/Mar/2006
Mesaje: 174
Locație: Bucuresti
|
| Trimis: Mie Dec 19, 2007 1:25 pm Titlul subiectului: <option> dupa SELECT [REZOLVAT] |
|
|
Am o tabela:
produs|descriere|producator
prod1|produs marfa|adidas
prod2|produs tare|nike
prod3|produsmare|adidas
Si $query = "SELECT * FROM produse";
Daca vreau sa fac sortare dupa producator si sa o introduc intr-un <select> va da Cod: <option value="adidas">adidas</option>
<option value="nike">nike</option>
<option value="adidas">adidas</option>
Eu vreau sa-l afiseze o singura data pe adidas.
Cum fac?
Stima,
PUIU
Edit// si nu vreau sa fac 2 tabele..... |
|
| Sus |
|
kyron
Data înscrierii: 16/Sep/2004
Mesaje: 542
Locație: Bucuresti
|
| Trimis: Mie Dec 19, 2007 1:37 pm Titlul subiectului: |
|
|
corect e sa faci 2 tabele
Daca nu vrei, modifici query-ul: $query = "SELECT DISTINCT producator FROM produse"; |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 1801
Locație: Sibiu
|
| Trimis: Mie Dec 19, 2007 1:38 pm Titlul subiectului: |
|
|
daca pe tine te intereseaza numai producatorii, de ce selectezi * ???
Cod:
$query = "SELECT DISTINCT producator FROM produse ORDER BY producator";
sau
Cod:
$query = "SELECT * FROM produse GROUP BY producator ORDER BY producator";
|
|
| Sus |
|
puiu
Data înscrierii: 16/Mar/2006
Mesaje: 174
Locație: Bucuresti
|
| Trimis: Mie Dec 19, 2007 2:01 pm Titlul subiectului: |
|
|
Mersi mult am rezolvat
Problema era ca din query-ul ala scoteam mai multe chestii dar am facut un query separat.
Stima,
PUIU |
|
| Sus |
|
mihaitha
Data înscrierii: 04/Mai/2007
Mesaje: 1801
Locație: Sibiu
|
| Trimis: Mie Dec 19, 2007 2:31 pm Titlul subiectului: |
|
|
Pai daca query-ul cu SELECT * il faci oricum, menajeaza si tu baza de date:
<?php
$query = 'SELECT * FROM produse';
$res = mysql_query($query);
$producatori = array();
while ($row = mysql_fetch_array($res)) :
// ... fa ce ai de facut cu restul campurilor
if (!in_array($row['producator'], $producatori))
$producatori[] = $row['producator'];
endwhile;
sort($producatori);
?>
<select name='producator'>
<?
foreach ($producatori as $producator) :
?>
<option value='<?= $producator ?>'><?= $producator ?></option>
<?
endforeach;
?>
</select>
<? ?>
Asa faci cu un singur query toata treaba. |
|
| Sus |
|
puiu
Data înscrierii: 16/Mar/2006
Mesaje: 174
Locație: Bucuresti
|
| Trimis: Mie Dec 19, 2007 4:07 pm Titlul subiectului: |
|
|
Corect, mersi mult.
Stima,
PUIU |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |