Zamiast losowy to dzienny
|
dragdrag |
Dodany dnia 29.06.2007 16:09:05
|
Przedszkolak
Postów: 13
Data rejestracji: 18.01.2007 12:30
|
Witam.
Jak zrobić aby np: zamiast losowego opisu był wyśtietlany dzienny lub dowcip.
Bo jest opcja, że wyświetla losowe dowcipy itp. ale nie ma jakoś możliwości, by wyświetlało przez cały dzień 1 ten sam albo chociaż przez pół dnia ?
Edytowane przez Pieka dnia 03.07.2007 12:24:53
|
|
|
|
Wścibski Gość |
Dodany dnia 25.11.2024 08:38:18
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
TRaffii |
Dodany dnia 02.07.2007 22:50:27
|
Przedszkolak
Postów: 7
Data rejestracji: 06.05.2007 14:35
|
To jest funkcja która losuje jeden numer na dzień
function getRan() {
srand((int)date('mY',time()));
$Arr = range(1,37);
shuffle($Arr);
return $Arr[(int)date('j',time())];
}
echo getRan();
Chyba nie będzie go trudno przerobić żeby zamiast numeru wyśwetlał dowcip lub opis. Pytanie kieruje do osób o dobrej znajomości PHP, sam też troche popróbuje;)
Stworzyłem coś takiego :
function getRan() {
srand((int)date('mY',time()));
$Arr = range(0,0);
$opis[] = 'Jakiś dowcip';
$opis[] = 'Jakiś opis';
$opis[] = 'Jakiś tekst';
$losowy = rand(0, count($opis));
echo $opis[$losowy];
shuffle($Arr);
return $Arr[(int)date('j',time())];
}
echo getRan();
Czy chodzi dobrze dowiemy sie jutro jak (jeśli się zmieni)
Edytowane przez TRaffii dnia 02.07.2007 23:02:19
|
|
|
|
dex |
Dodany dnia 02.07.2007 22:55:47
|
Początkujący
Postów: 212
Data rejestracji: 16.08.2006 15:18
|
spróbuj może z tym:
<SCRIPT LANGUAGE="JavaScript">
<!--
document.write("<center><FONT SIZE=+1 COLOR=#906C00><b>")
now = new Date()
if (now.getDay() == 0)
document.write("Ojej, weekend się powoli kończy!")
if (now.getDay() == 1)
document.write("Dzisiaj jest poniedziałek. To na pewno będzie udany tydzień!")
if (now.getDay() == 2)
document.write("Wtorek, poniedziałek już na szczęście za nami!")
if (now.getDay() == 3)
document.write("Środa, czy Twój tydzień jest również udany?")
if (now.getDay() == 4)
document.write("Czwartek, weekend już tuż tuż...")
if (now.getDay() == 5)
document.write("Cudownie, już piątek!")
if (now.getDay() == 6)
document.write("Wreszcie upragniony weekend!")
document.write("</FONT></b></center>")
//-->
</SCRIPT>
w prawdzie pokazuje tekst w zależności od dnia tygodnia i jest w javie, ale myślę, że sie przyda
|
|
|
|
TRaffii |
Dodany dnia 02.07.2007 23:04:06
|
Przedszkolak
Postów: 7
Data rejestracji: 06.05.2007 14:35
|
Dokładnie, możesz przyporządkować dowcip do danego dnia tygodnia(wersja dex-a w php) $dzien = date("w");
$linkToDay[] = 'test.pl'; // Niedziela
$linkToDay[] = 'test.pl'; // Poniedziałek
$linkToDay[] = 'test.pl'; // Wtorek
$linkToDay[] = 'test.pl'; // Środa
$linkToDay[] = 'test.pl'; // Czwartek
$linkToDay[] = 'test.pl'; // Piątek
$linkToDay[] = 'test.pl'; // Sobota
//Format: Od niedzieli (0) -> Sobota (6)
echo $linkToDay[$dzien];
|
|
|
|
dragdrag |
Dodany dnia 03.07.2007 05:19:13
|
Przedszkolak
Postów: 13
Data rejestracji: 18.01.2007 12:30
|
A jeśli mam bazę danych? Chciałbym aby był dzienny cytat z bazy da się coś takiego zrobić? |
|
|
|
wlodekp |
Dodany dnia 03.07.2007 07:18:32
|
Weteran
Postów: 3101 Pomógł: 29
Data rejestracji: 21.05.2005 22:27
|
Tak samo jak wyżej z rozbiciem tabeli bazy do tablicy tylko zauważ, że w tej tablicy są dni tygodnia czy Ty masz pole bazy o takiej nazwie? np-tytuł-title cytatu i zapis w niej poniedziałek, wtorek itd albo grupę o takiej nazwie wtedy będzie porcjami jakie należą do danego dnia grupy itd.
Jest to uwarunkowane konstrukcją Twojej tabeli dowcipów i zapisanego dowcipu pól tabeli-segregowania-znalezienia wyniku. A wyświetlenie go ich to już żden problem.
|
|
|
|
dragdrag |
Dodany dnia 03.07.2007 12:00:25
|
Przedszkolak
Postów: 13
Data rejestracji: 18.01.2007 12:30
|
<?
/*--------------------------------------------+
| PHP-Fusion 5 - Content Management System |
|---------------------------------------------|
| author: Nick Jones (Digitanium) © 2002-2005 |
| web: http://www.php-fusion.co.uk |
| email: |
|---------------------------------------------|
| Released under the terms and conditions of |
| the GNU General Public License (Version 2) |
+--------------------------------------------*/
@include_once "../../config.php";
include_once "../../maincore.php";
include_once BASEDIR."subheader.php";
include_once BASEDIR."side_left.php";
if (file_exists(INFUSIONS."eXtreme_joke/locale/".$settings['locale'].".php")) {
include INFUSIONS."eXtreme_joke/locale/".$settings['locale'].".php";
} else {
include INFUSIONS."eXtreme_joke/locale/English.php";
}
if (isset($joke_id)) {
$result = dbquery("UPDATE ".$db_prefix."joke SET joke_count=joke_count+1 WHERE joke_id='$joke_id'");
$result = dbquery("SELECT joke_url FROM ".$db_prefix."joke WHERE joke_id='$joke_id'");
$data = dbarray($result);
header ("Location:".$data['joke_url']);
}
if (!isset($cat_id)) {
opentable($locale['EJ_400']);
$result = dbquery("SELECT * FROM ".$db_prefix."joke_cat ORDER BY joke_cat_name");
$rows = dbrows($result);
if ($rows != 0) {
$columns = 1; $counter = 0;
echo "<table width='100%' cellspacing='0' cellpadding='0' class='tbl'>\n<tr>\n";
while($data = dbarray($result)) {
if ($counter != 0) if ($counter % $columns == 0) echo "</tr>\n<tr>\n";
$num = dbcount("(joke_cat)", "joke", "joke_cat='".$data['joke_cat_id']."'");
echo "<td align='left' valign='top'><b><a href='$PHP_SELF?cat_id=".$data['joke_cat_id']."'><u>".$data['joke_cat_name']."</u></b></a> <span class='small2'>(dowcipów <font color='red'><b>$num</b></font>)</span>";
if ($data['joke_cat_description'] != "") echo "<br>\n<span class='small'><font color='orange'>".$data['joke_cat_description']."</font></span>";
echo "</td>\n";
$counter++;
}
echo "</tr>\n</table>\n";
} else {
echo "<center><br>\n".$locale['EJ_430']."<br><br>\n</center>\n";
}
closetable();
} else {
if (!isNum($cat_id)) { header("Location:".$PHP_SELF); exit; }
if ($data = dbarray(dbquery("SELECT * FROM ".$db_prefix."joke_cat WHERE joke_cat_id='$cat_id'"))) {
opentable($locale['EJ_400'].": ".$data['joke_cat_name']);
$rows = dbcount("(*)", "joke", "joke_cat='$cat_id'");
if (!$rowstart) $rowstart = 0;
if ($rows != 0) {
$result = dbquery("SELECT * FROM ".$db_prefix."joke WHERE joke_cat='$cat_id' ORDER BY joke_name LIMIT $rowstart,8");
$numrows = dbrows($result); $i = 1;
while ($data = dbarray($result)) {
if ($data['joke_datestamp']+604800 > time()+($settings['timeoffset']*3600)) {
$new = " <span class='small'>".$locale['EJ_410']."</span>";
} else {
$new = "";
}
echo "<b>".$data['joke_name']."</b>$new\n";
if (iADMIN) {
echo " <span class='small'>(<a href='".INFUSIONS."eXtreme_joke/joke_admin.php?step=edit&joke_cat_id=".$data['joke_cat_id']."&joke_id=".$data['joke_id']."'>".$locale['EJ_2010']."</a>)</span>";
}
if ($data['joke_description'] != "")
$joke_joke = $data['joke_description'];
$joke_joke = nl2br($joke_joke);
echo "<br>".$joke_joke."<br><br>\n";
echo "<span class='small'><font class='alt'>".$locale['EJ_2003']." </font><a href='mailto:".$data['joke_mail']."'>";
if ($data['joke_nick'] != "") echo $data['joke_nick']."</a> ";
echo "<font class='alt'>".$locale['EJ_411']."</font> ".showdate("%d.%m.%y", $data['joke_datestamp'])."\n";
echo ($i != $numrows ? "<hr>\n" : "\n"); $i++;
}
closetable();
echo " <a href=\"javascript:history.go(-1)\"><b>".$locale['EJ_2009']."</b></a><br><div align='center' style='margin-top:5px;'>\n".makePageNav($rowstart,8,$rows,3,"$PHP_SELF?cat_id=$cat_id&")."\n</div>\n";
} else {
echo "<center><br>".$locale['EJ_2004']." <a href='joke_add.php'>".$locale['EJ_2005']."</a><br><br></center>\n";
closetable();
}
} else {
header("Location:".$PHP_SELF); exit;
}
}
include_once "../../side_right.php";
include_once "../../footer.php";
?>
Taki jest kod wtyczki joke.
więc co bym musiał zrobić tzn. co przerobić? |
|
|
|
wlodekp |
Dodany dnia 03.07.2007 12:30:29
|
Weteran
Postów: 3101 Pomógł: 29
Data rejestracji: 21.05.2005 22:27
|
Akurat ten który wkleiłeś to najmniej mnie interesuje-to wyświetlanie takie jakie jest obecnie a ty chcesz mieć swoje zmodyfikowane.
Więc podstawą do rozważań jest struktura tabel infusiona, którą bez żadnej instalacji widzę w pliku infusion.php odpowiedzialnym za utworzenie tabel bazy.
Są tu grupy jeśli utworzysz ich siedem z nazwami dni tygodnia to możesz wyświetlać wszystkie z danej grupy w danym dniu.
wybierasz z bazy select tabele jokes where group_name=$dzien
$dzien = date("w");
i wyświetlasz w pętli wyniki pola z trescią dowcipów
Tak to wygląda teoretycznie z głowy nie patrząc w tabelę wtyczki.
A temat zamiast losowy dzienny nie modyfikacja jokes wiec jak najbardziej teoretyczne podwaliny.
|
|
|
|
plaxsimo |
Dodany dnia 20.10.2007 21:58:29
|
Przedszkolak
Postów: 12
Data rejestracji: 05.04.2007 11:19
|
function getRan() {
srand((int)date('mY',time()));
$Arr = range(1,37);
shuffle($Arr);
return $Arr[(int)date('j',time())];
}
echo getRan();
Jak tutaj zrobić aby numerek nie losował sie w sobotę i niedziele tylko wyświetlał sie napis np: dziś nie losujemy
Kody w code! - Milka
Edytowane przez Milka dnia 21.10.2007 00:07:01
|
|
|