| Autor | Zpráva | ||
|---|---|---|---|
| nyllo Profil |
#1 · Zasláno: 5. 5. 2014, 23:03:32
Zdravím...
Pokouším se sestavit navigaci s podporou SQL kód nyní vypadá takto //**********
// navigace
if (isset($kalendar) && !$kalendar){
$rovno = $_GET['kalendar'];
}
else {
$rovno = $act_date;
}
SetLocale(LC_ALL, "czech.utf-8");
$datum_day = date('d', strtotime($row['date']));
$datum_day_name = date("w", strtotime($row['date']));
$datum_mesic = date("n", strtotime($row['date']));
$day_name = array("", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota", "Neděle");
$mesice = array ("",'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec');
echo '<div>';
echo '<ul class="pager">';
//předešlí měsíc
$sqla = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') < '".$rovno."' ORDER BY `events`.`date` desc LIMIT 1";
$vypisa = mysql_query($sqla);
if (FALSE === $vypisa) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_prew = mysql_fetch_array($vypisa))
{
$predesli_mesic = date("n", strtotime($row_prew['date']));
$predesli_mesic_y = date("Y", strtotime($row_prew['date']));
echo '<li><a href="../akce&kalendar='.$predesli_mesic_y.'-'.$predesli_mesic.'">'.$mesice[$predesli_mesic].' '.$predesli_mesic_y.'</a></li>';
};
//aktuální měsíc
$sqlb = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') = '".$rovno."' ORDER BY `events`.`date` asc LIMIT 1";
$vypisb = mysql_query($sqlb);
if (FALSE === $vypisb) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_t = mysql_fetch_array($vypisb))
{
$tento_mesic = date("w", strtotime($row_t['date']));
$tento_mesic_y = date("Y", strtotime($row_t['date']));
echo '<li><a href="../akce&kalendar='.$tento_mesic_y.'-'.$tento_mesic.'">'.$mesice[$tento_mesic].' '.$tento_mesic_y.'</a></li>';
};
//další měsíc
$sqlc = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') > '".$rovno."' ORDER BY `events`.`date` asc LIMIT 1";
$vypisc = mysql_query($sqlc);
if (FALSE === $vypisc) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_next = mysql_fetch_array($vypisc))
{
$next_mesic = date("n", strtotime($row_next['date']));
$next_mesic_y = date("Y", strtotime($row_next['date']));
echo '<li><a href="../akce&kalendar='.$next_mesic_y.'-'.$next_mesic.'"> '.$mesice[$next_mesic].' '.$next_mesic_y.'</a></li>';
};
echo '</ul>';
echo '</div>';Skoro to funguje jak má ale používám proměnné volání $_GET na jednotlivé měsíce a dále pod výchozím zobrazením je aktuální měsíc. Řeším jak ochránit aby se mi nevypsali nesmyslné měsíce které nejsou v db a pokud není definována hodnota $_GET aby se vše řídilo aktuálním měsícem. Děkuji za každou pomoc předem. |
||
| nyllo Profil |
#2 · Zasláno: 7. 5. 2014, 09:33:17
Vyřešeno.
if (isset($_GET["kalendar"])) {
$rovno = $_GET["kalendar"];
} else {
$rovno = $act_date;
}
SetLocale(LC_ALL, "czech.utf-8");
$datum_day = date('d', strtotime($row['date']));
$datum_day_name = date("w", strtotime($row['date']));
$datum_mesic = date("n", strtotime($row['date']));
$day_name = array("", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota", "Neděle");
$mesice = array ("",'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec');
//předešlí měsíc
$sqla = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') < '".$rovno."' ORDER BY `events`.`date` desc LIMIT 1";
$vypisa = mysql_query($sqla);
if (FALSE === $vypisa) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_prew = mysql_fetch_array($vypisa))
{
$predesli_mesic = date("n", strtotime($row_prew['date']));
$predesli_mesic_y = date("Y", strtotime($row_prew['date']));
echo '<li><a href="../akce&kalendar='.$predesli_mesic_y.'-'.$predesli_mesic.'">'.$mesice[$predesli_mesic].' '.$predesli_mesic_y.'</a></li> ';
};
//aktuální měsíc
$sqlb = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') = '".$rovno."' ORDER BY `events`.`date` desc LIMIT 1";
$vypisb = mysql_query($sqlb);
if (FALSE === $vypisb) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_t = mysql_fetch_array($vypisb))
{
$tento_mesic = date("n", strtotime($row_t['date']));
$tento_mesic_y = date("Y", strtotime($row_t['date']));
echo '<li><a href="../akce&kalendar='.$tento_mesic_y.'-'.$tento_mesic.'">'.$mesice[$tento_mesic].' '.$tento_mesic_y.'</a></li> ';
};
//další měsíc
$sqlc = "SELECT * FROM `events` where date_format(`date`,'%Y-%c') > '".$rovno."' ORDER BY `events`.`date` asc LIMIT 1";
$vypisc = mysql_query($sqlc);
if (FALSE === $vypisc) {
echo mysql_errno() . ": " . mysql_error();
}
while($row_next = mysql_fetch_array($vypisc))
{
$next_mesic = date("n", strtotime($row_next['date']));
$next_mesic_y = date("Y", strtotime($row_next['date']));
echo '<li><a href="../akce&kalendar='.$next_mesic_y.'-'.$next_mesic.'"> '.$mesice[$next_mesic].' '.$next_mesic_y.'</a></li>';
}; |
||
|
Časová prodleva: 12 let
|
|||
0