Piotr Wrona

Piotr Wrona Samozatrudnienie

Temat: Strona ala pajacyk dla fundacji

Po pierwsze Witam po drugie przepraszam że już w pierwszym temacie proszę o pomoc.


Przygotowują dla znajomego który prowadzi fundację pro zwierzęcą mała stronkę na której będzie mógł umieszczać informacje o działaniach Fundacji. Powiem szczerz że jestem laikiem w tej tematyce i dla tego korzystam w joomli która pomaga stworzyć www bez wiedzy programistycznej. Stronę na razie testuje na mov'Amp (serwer localhost pod joomlę).

Znajomemu udało się dogadać z kilkoma sponsorami którzy za oferowali mu "datki" w zamian za reklamę na stronce (tej powstającej). Tylko że chcą by ich reklama była przedstawiona w formie baneru który będzie się ukazywać przez określoną ilość czasu. A po upływie powiedzmy 20 sekund użytkownik będzie musiał potwierdzić obejrzenie reklamy kliknięciem na nią bądź na link (możliwość kliknięcia raz dziennie). Szukam już enty dzień i wiem że pod joomlę nie znajdę takiego komponentu dla tego przyglądam się skryptom jawa i PHP ale nie mogę znaleźć nic w tym stylu.
Na forum udało mi się znaleźć podpowiedź jak zrobić link z opóźnieniem
1.
<a href="java script:void(0);" onclick="setTimeout('location.href = \'adres strony\', opóźnienie w milisekundach)">Link</a>

Który mi nomen omen nie działaKwaśny

Może macie jakieś podpowiedzi ? Jakieś kursy ? Może jakiś gotowiec typu Pajacyk ?

Skrypt ma polegać na tym że pojawi się strona na stronie w danym miejscu
baner w formie powiedzmy PNG pod nim przycisk potwierdzenia który włącza się po upływie 10 sekund po kliknięciu pojawia się strona Dziękujemy za pomoc czy coś takiego. wraz z ładowaniem stron podziękowań na kompie delikwenta dodawane jest ciasteczko które wyklucza go z klikania na 24 godziny a gdy kliknie w ciągu tych 24 godzin na link pojawia się strona numer 3 z informacją Przykro mi dziś już klikałeś wpadnij jutro. Wiem że jest tego sporo ale żaden sponsor nie da tak dobrych warunków za zwykły baner.
Przemysław Pawliczuk

Przemysław Pawliczuk CEO/Designer @
h2p.pl, developer @
DreamCommerce SA

Temat: Strona ala pajacyk dla fundacji

<a href="java script:void(0);" onclick="setTimeout('location.href = \'adres strony\', opóźnienie w milisekundach)">Link</a>

A tak:
<a href="" onclick="setTimeout(function(){ location.href = 'adres strony'; }, opóźnienie w milisekundach);return false">Link</a>


Choć i tak to powinno być na zasadzie progressive-enhancement (czyli żadne on* w atrybutach).
Robert P.

Robert P. Senior PHP Developer

Temat: Strona ala pajacyk dla fundacji

Kod bannera możesz jako button wstawić dowolny znacznik, który obsługuje zdarzenie click() i odpowiednio go wystylować.

<a href="#adres_fundacji"><img src="adres_bannera.png" alt="" /></a>
<a href="#" id="button-confirm" style="display:none"><img src="button.png" alt=""/></a>


kod javascript przy założeniu, że korzystasz z jquery(http://jquery.com)


$(function (){
$("#button-confirm").click(function (){
setTimeout(function (){
$("#button-confirm").show();
},1000*10);
});
});


całość js objęta znacznikiem <script>

Powodzenia :)
Piotr Wrona

Piotr Wrona Samozatrudnienie

Temat: Strona ala pajacyk dla fundacji

Przemku funkcja z czasowym linkiem działa bardzo fajnie tylko zastanawia mnie czy istnieje możliwość podpięcia pod niego jakiegoś ciasteczka umożliwiającego kliknięcie raz na dobę?
Robert P.

Robert P. Senior PHP Developer

Temat: Strona ala pajacyk dla fundacji

Możesz w document.cookie ustawić ciasteczko, które wygasa za 24h od momentu kliknięcia. Możesz również w samym php to sprawdzić a obrazek wyświetlać za pomocą php i headerów i tak jest lepiej ponieważ jak wstawiasz obrazek nie musisz non-stop dawać kodu JS.

Na temat cookie w JS możesz przeczytać tutaj:

http://www.quirksmode.org/js/cookies.html
Piotr Wrona

Piotr Wrona Samozatrudnienie

Temat: Strona ala pajacyk dla fundacji

POST ZMIENIONY

Zrobiłem coś takiego:

<?php

if ($ciastko2 == 1) {

header("Location: http://localhost/a/index-3.php");

} else {

header("Location: http://localhost/a/index-2.php");

}

?>

<?php

setcookie('Ciastko2', 1, (time()+24*3600), "/");

?>

Z założenia pierwsza funkcja ma sprawdzać czy użytkownik był już na podstronie index-2 i jeśli tak przekierowywać na index-3

Druga funkcja gdy nie znajdzie ciasteczka ma tworzyć nowe z informacją o odwiedzeniu index-2.

Niby wszystko jest ok ale FireFox wywala komunikat:

Nieprawidłowe przekierowanie

Firefox wykrył, że serwer przekierowuje żądanie tego zasobu w sposób uniemożliwiający jego ukończenie.
* Problem ten może się pojawić w wyniku zablokowania lub odrzucenia ciasteczek.

Gdzie tkwi błąd ?






Piotr Wrona edytował(a) ten post dnia 09.03.11 o godzinie 11:57
Robert P.

Robert P. Senior PHP Developer

Temat: Strona ala pajacyk dla fundacji

Ale jak ty pobierasz te cookie? Używasz $_COOKIE[]?.
Piotr Wrona

Piotr Wrona Samozatrudnienie

Temat: Strona ala pajacyk dla fundacji

Z tego co się orientuję to ten kawałek

if ($ciastko2 == 1) {

ma pobrać ciastko i w razie obecności przekierować

header("Location: http://localhost/a/index-3.php");

} else {

header("Location: http://localhost/a/index-2.php");
Robert P.

Robert P. Senior PHP Developer

Temat: Strona ala pajacyk dla fundacji

jeżeli Ciastko2 to nazwa cookisa to pobierasz go tak

$_COOKIE['Ciastko2'];
Piotr Wrona

Piotr Wrona Samozatrudnienie

Temat: Strona ala pajacyk dla fundacji

a pierdziele działa :)

Wielkie dzięki :D
Robert P.

Robert P. Senior PHP Developer

Temat: Strona ala pajacyk dla fundacji

Nie ma za co :) powodzenia

Następna dyskusja:

strona dostepna dla jednego...




Wyślij zaproszenie do