Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Toiselle sivulle siirtyminen PHP:llä

Sivun loppuun

Kaffir [03.03.2005 10:38:20]

#

Tiedän että tämä on todella tyhmä kysymys, miten PHP:llä voi siirtyä jollekkin toiselle sivulle esim 3 sekunnin kuluessa?
HTML se olisi:

<meta http-equiv="refresh" content="3;URL=https://www.ohjelmointiputka.net">

Mutta miten tuo sama PHP:llä?

rndprogy [03.03.2005 10:59:39]

#

Tämä lienee toimiva ratkaisu.

<?php
usleep(3000000);
header("location: https://www.ohjelmointiputka.net");
?>

edit: tuo usleep ei näyttäisikään toimivan. :/ Mutta kyllä se menee sivulle.

Lazu [03.03.2005 11:01:01]

#

PHP:llä se onnistuu header() komennolla. esim. header("Location: https://www.ohjelmointiputka.net/"); siirtyy saman tien ohjelmointiputkaan. Tämän komennon jälkeen täytyy pitää huoli että php-skripti poistuu exit(); komennolla.

Lisää tietoa https://www.php.net/manual/fi/function.header.php

Edit: Jaha, rndprogy ehti ensin :)

Edit2: Tuolta yllä olevalta sivulta löytyi seuraavanlainen

<?php
$sec = 10;
// Redirects the browser after $sec seconds
header("Refresh: $sec; http://www.php.net");
echo "This content is displayed for $sec seconds, then the browser will redirect.";
?>

Blaze [03.03.2005 11:20:41]

#

Lazu kirjoitti:

header("Refresh: $sec; http://www.php.net");

Ei ole speksissä, joten tuon varaan ei voi laskea.

kayttaja-2791 [03.03.2005 11:55:00]

#

<?php
print "<meta http-equiv=\"refresh\" content=\"3;URL=https://www.ohjelmointiputka.net\">";
?>

Tuon pistät sivun headin sisään ;)

raezel [03.03.2005 14:02:50]

#

Itse olen joskus käyttänyt purkkaa että lyön tuon metatagin vain echolla läpi siinä vaiheessa kun sitä tarvitaan. Ei hyvä tapa mutta ainakin toiminut tähän asti.

T.M. [03.03.2005 14:12:31]

#

Lazu kirjoitti:

header("Refresh: $sec; http://www.php.net");

Koodistasi puuttuu URL:n osoitin:

header("Refresh: $sec; url=http://www.php.net");

Lazu [03.03.2005 15:03:47]

#

T.M. kirjoitti:

Koodistasi puuttuu URL:n osoitin

Ei ollut minun koodi vaan copy/pastesin sen tuolta php.netistä, kuten mainitsin.

T.M. [04.03.2005 01:43:41]

#

Lazu kirjoitti:

Ei ollut minun koodi vaan copy/pastesin sen tuolta php.netistä, kuten mainitsin.

Anteeksi.
Ei ollut tarkoitus loukata egoasi millään tavalla.

Nemo.T [04.03.2005 23:27:12]

#

Miten viikonpäivän ratkaisu tapahtuu?
Tähän koodiin pitää melkein joka vuosi tehdä pientä purkkakorjausta..
Purkkakorjauskin kelpaisi, mutta miten?

Vähentää pitää ilmeisesti 2 päivää, mutta mistä muuttujasta?

$aika = date("z")/7-1; // lasketaan viikonpäivä vuoden alusta
$date = round($aika, 0)+1;

https://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=482

Blaze [04.03.2005 23:44:43]

#

Ja mitenkäs tämä viimeinen liittyy aiheeseen?

date('w');
Numeric representation of the day of the week
0 (for Sunday) through 6 (for Saturday)

Tuo sitä, mitä haet? (Osoitteesta https://www.php.net/manual/fi/function.date.php)

Nemo.T [06.03.2005 14:20:24]

#

Nyt haussa on siis viikonpäivän ratkaisu.
Tuo date('w') kun kertoo viikkonumeron esim. 52

https://www.ohjelmointiputka.net/koodit_nayta.php?tunnus=482

vipemype [06.03.2005 14:36:31]

#

date('w') Numeric representation of the day of the week 0 (for Sunday) through 6 (for Saturday)

date('W') ISO-8601 week number of year, weeks starting on Monday (added in PHP 4.1.0) Example: 42 (the 42nd week in the year)

Nemo.T [09.03.2005 12:07:22]

#

Ahaa!
Kiitoksia selvennyksestä. Olihan se aika hyvin php.netissäkin selvennetty.

Tässä kyseisessä ohjelmanpätkässä käytetään tuota date('z') koska kysymys on laitettu vaihtumaan aina kun päiviä on mennyt tuo 7kpl eteenpäin. Eli päivät su-ma 0-6 ei toimi tässä. Parempi tietenkin olisi..

Viimevuonna 2004 vuoden ensimmäinen päivä oli torstai.
Tänä vuonna 2005 vuoden ensimmäinen päivä oli lauantai.

Päiviin date('z') pitäisi kaiken järjen mukaan siis lisätä +2.

Kokeiltu on, mutta kysymystä ei ole saatu vaihtumaan maanantaina?
JÄNNÄÄ!

ajv [09.03.2005 15:32:49]

#

Tuollainen kysymyksen vaihto esim. maanantaina klo. 00.00 kanntattaa toteuttaa crontabilla jos vain mahdollista. Ei tarvitse pelätä toimiiko purkat vai ei :)

Biotank [09.03.2005 19:25:18]

#

Ihan mielenkiinnosta kysyn, että mikä tuo mysteerinen crontab on, kun en sitä php.net:stä löytänyt?

sooda [09.03.2005 19:27:41]

#

Biotank: ei ihme ettet php.netistä, ei liity php:hen oikein mitenkää. Se on semmonen hauska komentojen ajastussysteemi.

man cron kirjoitti:

cron - daemon to execute scheduled commands (ISC Cron V4.1)

Blaze [09.03.2005 19:28:04]

#

Ei ole PHP:n vaan Unix-käyttisten ominaisuus. Ks. esim. http://www.rt.com/man/cron.8.html

Edit: sooda mokoma, ei saa olla mua nopeempi! :P

ajv [09.03.2005 19:34:17]

#

Niin ja jos homma pyörii windows-alustalla, ajaa saman asian käsittääkseni Task Scheduler, jota en ole ikinä saanut toimimaan(lue: kokeilin joskus kerran, ei toiminut ja luovutin :))

Nemo.T [15.03.2005 10:48:53]

#

.


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta