[PHP] Problem z array_rand HELP

0

Jak mamy sobie skrypciaka

<?php

function AutoPrintBaner($filename)
{
 
  $f = fopen($filename, 'r');
  While(feof($f)) {
    $i++;
	$link[$i]  = fgets($f, 1024);
	$obraz[$i] = fgets($f, 1024);
	$dymek[$i] = fgets($f, 1024);
  };
  fclose($f);

  $adres=$link[array_rand($link)];
  $image=$obraz[array_rand($obraz)];
  $hint=$dymek[array_rand($dymek)];
  print('<a href="'.$adres.'" title="'.$hint.'"><img src="'.$image.'" /></a>');
}

AutoPrintBaner($fn);

?>

to jak ja go odpalam, to mi wywala błędy:

Warning: array_rand(): First argument has to be an array in C:\lokalizacja\pliku\jest\tajna\baner.php on line 15

Warning: array_rand(): First argument has to be an array in C:\lokalizacja\pliku\jest\tajna\baner.php on line 16

Warning: array_rand(): First argument has to be an array in C:\lokalizacja\pliku\jest\tajna\baner.php on line 17

i nici z banera! Dziwne, prawda? [???] Pomóżcie [!!!] [!!!] [!!!]

0

a co masz pod zmienną $fn ? gdzie $i=0 ? jak przy obraz, link i cośtam dajesz array_rand a link ma odpowiadać obraz to obraz będzie z czego innego niż link chyba że wylosuje to samo
ja bym zrobił tą funkcję tak:

function AutoPrintBaner($filename)
{
  $f = file($filename);
  list($adres,$image,$hint)=explode('|||',array_rand($f));
  print('<a href="'.$adres.'" title="'.$hint.'"><img src="'.$image.'" /></a>');
}

i struktura pliku zamiast:

http://reklama
http://obraz/obraz.jpg
Obrazy !
http://link2.com
link.jpg
link drugi

dać:

http://reklama|||htttp://obraz/obraz.jpg|||Obrazy !
http://link2.com|||link.jpg|||link drugi

pisane z głowy ale może zadziała :P

0

Thanks, już wiem, jak sobie poradzę, gdyż przypomniałeś mi o $i. Wieeeeeeeeeeeeeeeeelkie dzięki ;) !

1 użytkowników online, w tym zalogowanych: 0, gości: 1