Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Rotator reklam
Forum PHP.pl > Forum > PHP
debian
Witam, chciałbym prosić o pomoc w stworzeniu rotatora bannerów. Mianowicie chodzi mi o skrypt który mogę includować w miejsce reklamy. I on będzie losow pobierał kody reklam z bazy danych. kody java script html cokolwiek. flashowe bannery itd. smile.gif
erix
  1. SELECT * FROM tabela ORDER BY RAND() LIMIT 1
i właściwie to wszystko, czego potrzebujesz. tongue.gif

To naprawdę proste zadanie, nie wiem, w czym masz konkretnie problem.
mecenas
@erix: przecież problem widoczny jest gołym okiem tongue.gif nad czym tu się zastanawiać? winksmiley.jpg
debian
Cytat(erix @ 14.12.2008, 23:35:14 ) *
  1. SELECT * FROM tabela ORDER BY RAND() LIMIT 1
i właściwie to wszystko, czego potrzebujesz. tongue.gif

To naprawdę proste zadanie, nie wiem, w czym masz konkretnie problem.


Jak to wstawie do skryptu to on będzie mi losowo wyswietlał kody bannerów?
erix
To już Twój problem. Wysil się trochę samodzielnie. Google nie gryzie.
debian
Oki więc zrobiłem tabele asd w niej pole id ktore sie samo uzupełnia i kodbanera varchar (1000)
i oto kod skryptu:
  1. <?php
  2. $db = mysql_connect ("localhost", "login", "haslo") or die ("Połączenie z bazą MySQL nie powiodło się! <br>");
  3. $select = mysql_select_db ("baza") or die ("Wybór bazy nie powiódł się! <br>");
  4. $ad = mysql_query("SELECT * FROM asd ORDER BY RAND() LIMIT 1");
  5.  
  6. print $ad;
  7.  
  8. ?>

Niestety nic sie nie dzieje, biała strona a w bazie dodałem przykładowe kody. Proszę o pomoc
debian
Cytat(erix @ 15.12.2008, 21:29:19 ) *


Czarna magia oO możesz mi pomóc to zastosować w kodzie?
erix
Jest przecież opisane na tej stronie... :|
piotrooo89
czego nie rozumiesz? po polsku masz
Kod
Zapisuje wiersz wyniku w tablicy asocjacyjnej


tablica asocjacyjna
debian
no przykład jest ale ja nie wiem jak to zastosowac u mnie? takie trudne do zrozumienia?
Manwe89
jak masz np pola w bazie: id, nazwa, link, okno i wywołujesz zapytanie do bazy MySQL (bo w innych SQL to nie działa) z parametrem LIMIT 1; to zakladajac ze jestesmy w miejscu:

  1. <?php
  2. $ad = mysql_query("SELECT * FROM asd ORDER BY RAND() LIMIT 1");
  3. ?>


i w bazie coś było, to teraz lecimy dalej:

  1. <?php
  2. $wynik=mysql_fetch_assoc($ad);
  3.  
  4. echo $wynik['id']; //wyświetli pole id z bazy
  5. echo $wynik['nazwa']; //pole nazwa
  6. echo $wynik['nazwa_pola']; //wyświetli pole o nazwie: nazwa_pola
  7. ?>


rozumiesz??
debian
Tak dziękuję Ci bardzo za pomoc smile.gif

Aha jeszcze jedno. Chcąc wyświetlić np, w panelu administrtora tych reklam wszystkie reklamy jedna po drugiej to jaki kod trzeba napisać. Bo prubuje coś i mi pokazuje tylko pierwszą :/

Chyba pętlą to trzeba zrobić.
Bo zrobiłem sobie w tabeli id, name, code. Pole name nie jest wykorzystywane do wyswietlania reklamy ale chciałbym własnie wyświetlić w słupku cos takiego
Id: numer_id Nazwa: nazwa reklama: i tutaj obrazek reklamy a jeszcze lepiej jakby sam kod w formie tekstu. no i to wszystko w słupku zeby pokazało wszystkie reklamy/bannery.
maniekl2
dokładnie pętlą przykładowo:
  1. <?php
  2. $ad = mysql_query("SELECT * FROM asd ORDER BY id DESC");
  3. while($row=mysql_fetch_array($ad))  {
  4. echo $row['id'];
  5. }
  6. ?>


//edit
Tak, pomyliłem się, zapomniałem o tym RAND(), ale już poprawiłem
Manwe89
tylko ze ja juz dalbym raczej

  1. <?php
  2. $ad = mysql_query("SELECT * FROM asd ORDER BY id DESC");
  3. while($row=mysql_fetch_array($ad))  {
  4. echo $row['nazwa_pola'];
  5. }
  6. ?>


bo po co za kazdym razem inna losowa kolejnosc?;>
debian
Dzięki wielkie działa smile.gif. Nad jednym myśle jeszcze biggrin.gif jak zrobić żeby mozna było wyświetlic kod bannera jako tekst a nie go wykonywac smile.gif bo gdy chce zrobic echo 'bleble(...) Kod bannera:&nbsp; '.$row['code'].'; to mi wyświetla banner biggrin.gif a ja chce w tabelce poprostu wyświetlić jego kod smile.gif
Manwe89
wez kod html w znacznik <pre> </pre>
piotrooo89
a w jakiej formie masz wyświetlany ten kod? link czy jakaś ścieżka?
debian
No kod czyli tagi htmlowe chciałem wyswietlić jako tekst ale z tym $row['code']
piotrooo89
dalej nie wiem jak to wygląda... strzał: spróbuj strip_tags
debian
No chodzi mi to że chce wyświetlić z tego $row['code'] kod kazdej reklamy ale zeby był wyświetlany jako tekst np, tutaj na forum dajesz sobie
  1. <?php
  2. bleble
  3. ?>
i Ci pokazuje taki kod. Ja chce zeby tez pokazywało ale bez kolorowania skłądki itd. Poprosty niwelowanie składni html.
piotrooo89
w takim razie użyj tego co Ci napisałem albo: htmlspecialchars
debian
  1. <?php
  2. $code = $row['code'];
  3. $kod = htmlspecialchars($code);
  4. echo $kod;
  5. ?>


Nic sie nie pokazuje w ten sposób.
piotrooo89
o co chodzi? nie chodzi? co ty wogóle robisz? sprawdzasz czy nie? liczysz na jakiegoś gotowca?

//EDIT

pokaż jak wygląda kod do tego baneru i jak ma wyświetlać? bo kurcze jakoś nie chcesz współpracować.
debian
Cytat(piotrooo89 @ 16.12.2008, 21:22:34 ) *
o co chodzi? nie chodzi? co ty wogóle robisz? sprawdzasz czy nie? liczysz na jakiegoś gotowca?


No mam problem wiec pytam, uzyskuję odpowiedź i sprawdzam, nie działa to piszę że nie działa. Może źle to robie nie wiem.

EDIT.

No kod <a href="#"><img border="0" src="banner.jpg" alt="" /></a> no i chce zeby pokazało to jako zwykły tekst a nie wykonało i wyświetliło ten banner. Bo mi chodzi że robie sobie tabelkę i w niej
Id reklamy: $row['id'] nazwa: $row['name'] kod: htmlspeciajchars($row['code']) banner: $row['code']
No i pokazuje numer banera, jego nazwe, wyświetla jego kod źródłowy i wyświetla samego banera
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.