Autor | Zpráva | ||
---|---|---|---|
Patiseq Profil * |
#1 · Zasláno: 11. 7. 2013, 02:23:57 · Upravil/a: Patiseq
čau lidi mám zde script:
<?php include "../include/config.php"; mysql_connect($mysql_ip,$mysql_user,$mysql_pass); mysql_select_db($mysql_name); $query_vyber_vse = mysql_query("SELECT * FROM citaty WHERE id ;"); while ($zaznam = mysql_fetch_array($query_vyber_vse)) echo " <tr><td colspan='5'><font color='purple'><b><u><i>od ".$zaznam['autor']."</i></u></b></font></td></tr> <tr><td colspan='5'>".$zaznam['citat']."</td></tr> <tr><td colspan='5'><br><br></td></tr>"; mysql_close($spojeni); ?> omlouvám se špatný zdroják :) <?php include "../include/config.php"; mysql_connect($mysql_ip,$mysql_user,$mysql_pass); mysql_select_db($mysql_name); $query_vyber_vse = mysql_query("SELECT * FROM zmeny WHERE vlozeno ;"); while ($row = mysql_fetch_object($query_vyber_vse)){ echo "<tr><td>"; if ($row->vlozeno == date("Y-m-d")){ echo "<b>Dnes byla vložena nová <a href='../zmeny/'>změna</a></b>"; //vypíšeme z text } echo "</td></tr>"; } ?> |
||
Tori Profil |
Podmínka na "pouze dnešní události" patří do SQL dotazu:
include "../include/config.php"; mysql_connect($mysql_ip,$mysql_user,$mysql_pass); mysql_select_db($mysql_name); $query_vyber_vse = mysql_query("SELECT * FROM zmeny WHERE vlozeno = '".date("Y-m-d")."'"); while ($row = mysql_fetch_object($query_vyber_vse)){ echo "<tr><td>"; echo "<b>Dnes byla vložena nová <a href='../zmeny/'>změna</a></b>"; //vypíšeme z text echo "</td></tr>"; } |
||
Patiseq Profil * |
#3 · Zasláno: 11. 7. 2013, 07:57:16
nejde nějak nastavit když tam bude víc věcí uložených v DB aby to psalo jen jednou? se SQL teprv začínám :)
|
||
Patiseq Profil * |
#4 · Zasláno: 11. 7. 2013, 12:38:23
Dobrý už sem na to přišel :) pokud by to někoho zajímalo jak sem to udělal zde je zdroják, je to výpis z databáze podle podmínky a vypíše to kolik událostíí je shodných:
<?php include "../include/config.php"; mysql_connect($mysql_ip,$mysql_user,$mysql_pass); mysql_select_db($mysql_name); $query_vyber_vse = mysql_query("SELECT * FROM zmeny WHERE vlozeno = '".date("Y-m-d")."'"); $pocet = mysql_num_rows($query_vyber_vse); if ($pocet >= 1){ echo "<tr><td><b>Dnes byla vložena nová <a href='../zmeny/'>změna ($pocet)</a></b></td></tr>"; } ?> |
||
juriad Profil |
#5 · Zasláno: 11. 7. 2013, 12:57:49
Patiseq:
Také možné, ale lepší je položit chytřejší dotaz: SELECT COUNT(*) AS pocet FROM zmeny WHERE vlozeno = CURDATE() Změny jsou 2: 1) použije se funkce COUNT, přenáší se jediný řádek s výsledkem; pokud bys vložil milion změn za den a použil svůj starý dotaz, muselo by se přenést všech milion řádků, aby se spočítalo, kolik jich je. Funkce COUNT je spočítá už v databázi, narozdíl od mysql_num_rows, která je počítá až v PHP. 2) v databázi můžeš používat funkce, které pracují s datumem: CURDATE() vrací aktuální datum, nemusíš ho tedy vypočítávat a formátovat v PHP. A část svého kódu nahradíš za: $query_vyber_pocet = mysql_query("SELECT COUNT(*) AS pocet FROM zmeny WHERE vlozeno = CURDATE()"); $radek = mysql_fetch_assoc($query_vyber_pocet); $pocet = $radek['pocet']; |
||
Patiseq Profil * |
#6 · Zasláno: 11. 7. 2013, 13:16:03
tak jo díki, jak jsem řekl php ovládám ale SQL zatím tak zlehka, začal jsem s tím nedávno kvůli stránkování a pomalu se chytám, děkuji za spolupráci,
|
||
Časová prodleva: 11 let
|
0