Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

ispis podataka iz Mysql baze pomoću foreach petlje

[es] :: PHP :: PHP za početnike :: ispis podataka iz Mysql baze pomoću foreach petlje

[ Pregleda: 2105 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

drmilun9
Dragan Milunović

Član broj: 303475
Poruke: 99
*.teol.net.



+1 Profil

icon ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 17:51 - pre 110 meseci
POZDRAV SVIMA.

Imam problem prilikom ispisa iz Mysql baze. Problem je sledeći: koristim foreach petlju da mi se ispišu podaci iz baze. I petlja dobro radi kad treba da se ispišu podaci koji se nalaze u bazi ali stvar je u tome da ja želim da kad nema podataka u bazi, koje korisnik može da zatraži da se ispiše porukica da "nema traženih podataka" . Mislim da se za tu opciju koristi opcija "empty" ili nešto slično. Mislim da je ova moja foreach petlja nepotpuna koju koristim i znači nedostaje mi opcija da kada korisnik zatraži određene podatke u bazi koji nepostoje i klikne na "submit" da se pojavi "nema traženih podataka". Evo i koda:



global $wpdb;

$imena = $wpdb->get_results("select * from tabelaslika where cijena BETWEEN $cijenaod AND $cijenado AND kvadrati BETWEEN $kvadratiod AND $kvadratido AND (mjesto) = '".$mjesto."'AND (objekat) = '".$objekat."'AND (kategorija) = '".$kategorija."' ");

echo "<table>";

foreach($imena as $customer){
echo "<tr>";
echo "<td>".$customer->kategorija."</td>";
echo "<td>".$customer->mjesto."</td>";
echo "<td>".$customer->objekat."</td>";
echo "<td>".$customer->kvadrati."</td>";
echo "<td>".$customer->cijena."</td>";
echo "</td>";

}
echo "</table>";


HVALA SVIMA UNAPRED NA EVENTUALNOJ POMOĆI. POMAGAJTE
 
Odgovor na temu

vmosnak
Vladislav Mosnak
Novi Sad

Član broj: 304531
Poruke: 15
62.193.135.*



+1 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 18:38 - pre 110 meseci
Code:

if(count($imena) > 0){
    echo "<table>";
    foreach($imena as $customer){
         echo "<tr>";
         echo "<td>".$customer->kategorija."</td>";
         echo "<td>".$customer->mjesto."</td>";
         echo "<td>".$customer->objekat."</td>";
         echo "<td>".$customer->kvadrati."</td>";
         echo "<td>".$customer->cijena."</td>";
         echo "</td>";
    }
    echo "</table>";
}


wp-codex

Generic, mulitple row results can be pulled from the database with get_results. The function returns the entire query result as an array.
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2246 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 18:56 - pre 110 meseci
@drmilun9

Mali off.

drmilune, zašto echo na svakoj liniji?

Zar ti nije lakše ovako..

Code (php):


echo '<table>';

foreach($imena as $customer){

echo
'<tr>
<td>'
.$customer->kategorija.'</td>
<td>'
.$customer->mjesto.'</td>
<td>'
.$customer->objekat.'</td>
<td>'
.$customer->kvadrati.'</td>
<td>'
.$customer->cijena.'</td>
</tr>'
;

}

echo '</table>';

 


I uvek se trudi da php-om ispisuješ html pomoću singlquota, gde god je to moguće.

Zašto? Zato što doublequote može da sadrži i promenljivu.
A kada je singlquot, onda je u pitanju uvek string value. Dakle, tekst ili tag i parser onda "ne gleda" jel' to možda promenjiva, već se zna šta je. Mali + na performanse dakle.
Pored toga, kada pišeš singlquot i naiđeš na deo gde treba da outputuješ recimo <tr class="something">, ti ćeš ga tako i ispisati. Nećeš morati da "begaš"

npr. echo "<tr class=\"something\">";

Što je jako jako olakšavajuća okolnost u radu onda kada ima mnogo klasa i id za ispisivanje.

poz.

[Ovu poruku je menjao plus_minus dana 26.06.2012. u 20:08 GMT+1]
about:networking
 
Odgovor na temu

ivan.a
PHP developer

Član broj: 83976
Poruke: 400
*.dynamic.isp.telekom.rs.



+44 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 20:42 - pre 110 meseci
Zašto uopšte koristiti php za html output? Po meni je najidealnije rešenje koristiti čist HTML i razdvajati od php-a gde god je to moguće.

Code (php):
<table>
<?php  foreach($imena as $customer){ ?>
<td><?php echo $customer->kategorija; ?></td>
<td><?php echo $customer->mjesto; ?></td>
<td><?php echo $customer->objekat; ?></td>
<td><?php echo $customer->kvadrati; ?></td>
<td><?php echo $customer->cijena; ?></td>
<?php } ?>
</table>


I hope I didn't brain my damage - Homer
if (wife.position == kitchen) {return sandwich};
 
Odgovor na temu

drmilun9
Dragan Milunović

Član broj: 303475
Poruke: 99
*.teol.net.



+1 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 22:03 - pre 110 meseci
Hvala svima na odgovorima i potrudiću se da popravim način pisanja koda, ali meni još uvjek nije jasna petlja. Jer kad ukucam i ovaj kod meni prilikom osvježavanja stranice ispisuje prvo "nema traženih rezultata" bez čekanja da korisnik klikne "submit" to jest da unese tražene rezultate. Znači problem je što se odmah po otvaranju stranice prikaže "nema traženih rezultata" bez uopšte ikakve reakcije od strane korisnika i prije traženja bilo kakvih podataka iz baze. Pozdravček.


global $wpdb;

$imena = $wpdb->get_results("select * from tabelaslika where cijena BETWEEN $cijenaod AND $cijenado AND kvadrati BETWEEN $kvadratiod AND $kvadratido AND (mjesto) = '".$mjesto."'AND (objekat) = '".$objekat."'AND (kategorija) = '".$kategorija."' ");

echo "<table>";

if(count($imena) > 0){

foreach($imena as $customer){

echo "<tr>";
echo "<td>".$customer->kategorija."</td>";
echo "<td>".$customer->mjesto."</td>";
echo "<td>".$customer->objekat."</td>";
echo "<td>".$customer->kvadrati."</td>";

echo "</tr>";
}
}
else{
echo "nema traženih podataka";
}
echo "</tr>";


echo "</table>";
 
Odgovor na temu

vmosnak
Vladislav Mosnak
Novi Sad

Član broj: 304531
Poruke: 15
62.193.135.*



+1 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 22:34 - pre 110 meseci
ne znam da li pravish plugin, ili sta god, ali je tesko odgovoriti s obzirom da ne znam gde i kada ti se izvrshava ovaj kod.
Koliko sam ja shvatio, taj kod se izvrsava cim se stranica ucita, samim tim $imena nije definisana i izvrshava se "else" deo "if-else". Trebao bi taj deo koda da izvrshavash tek kada je forma u kojoj korisnik unosi kriterijume pretrage submit-ovana.
Nadam se da sam shvatio, i pomogao oko problema, ako nisam slobodno ponovo pitaj.
 
Odgovor na temu

plus_minus

Član broj: 289459
Poruke: 2242
*.dynamic.isp.telekom.rs.

Sajt: https://hardcoder.xyz


+2246 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 22:48 - pre 110 meseci
@ivan.a

Slažem se. Slažem se u potpunosti. :) Njegov kod je takav kakav je i dalje od toga ne znamo.

Ne mora ni "echo". A ni "<?php" već samo "<?=$customer->kategorija; ?> etc.. " ali, lepše će njemu biti kada sam krene to da uviđa..

A možda i grešim. :)

Osim toga, zašto foreach u delu gde je html?

Zašto ne sve to kao mala jednostavna funkcija?
A u delu gde treba da bude, umesto petlje i tabele,
samo jedno "<body><table><?=$function; ?></table> etc.. </body>" parčence.
about:networking
 
Odgovor na temu

drmilun9
Dragan Milunović

Član broj: 303475
Poruke: 99
*.teol.net.



+1 Profil

icon Re: ispis podataka iz Mysql baze pomoću foreach petlje26.06.2012. u 23:06 - pre 110 meseci
Hvala svima na pomoći, riješio sam problem pomoću ovog koda:

if (isset($_POST['submittt']))
 
Odgovor na temu

[es] :: PHP :: PHP za početnike :: ispis podataka iz Mysql baze pomoću foreach petlje

[ Pregleda: 2105 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.