Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: losowe zmienne
Forum PHP.pl > Forum > PHP
lol
mam taki problem:

[php:1:72beb36e53]<?php
if ($a="slon") {
$b="malpa" || $b="ssak"; <-- i wlasnie tu problem, poniewaz chcialbym aby zmienna byla losowa tzn. przy jednym zaladowaniu miala wartosc malpa, przy nastepnym ssak itd.
}

?>[/php:1:72beb36e53]
Jabol
zrób sobie tablice z małpą i słoniem i potem random pomiędzy 1 i 0 i wybierasz losową wartość.
lol
dzieki biggrin.gif
scanner
tongue.gif To będzie duża tablica... tongue.gif
lol
[php:1:38106b8b48]<?
$b[1]="malpa";
$b[2]="ssak";
$b[3]="lol";
if ($a="slon") {
$zlicz = count($cool.gif;
$mapisz =$b[rand(1, $zlicz)];
}
echo "$b to $b i $a to $a";
echo "|||elementow w tablicy: $zlicz";
echo "$mapisz";
?>
[/php:1:38106b8b48]
no udalo sie biggrin.gif biggrin.gif biggrin.gif biggrin.gif
kwiateek
Na podstawie regulaminowego punktu zwracam uwagę Tobie lol na to, ze w poscie nie ujales kodu w znaczki php zgodnie z ogolnymi postanowieniami regulaminu. W konsewencji zaistnialej sytuacji Twoj post jest nieczytelny dla innych uzytkownikow. 8)
kurtz
ekhem. pozowle zwrocic uwage ze

Kod
if ($zmienna = "a")
to co innego niz
Kod
if ($zmienna == "a")
;)

tobie raczej chodzi o ==

pozdrawiam
Jabol
a czume uważasz sprawdzanie czy przypisanie zmiennej wartości "slon" się udało za złe winksmiley.jpg ?
kurtz
Cytat
a czume uważasz sprawdzanie czy przypisanie zmiennej wartości "slon" się udało za złe ;) ?
niczego takiego nie powiedzialem.
voytass
zamiast
[php:1:505971274c]<?php
$b[1]="malpa";
$b[2]="ssak";
$b[3]="lol";
?>[/php:1:505971274c]
to mozna:
[php:1:505971274c]<?php
$b = array ("malpa","ssak","lol");
?>[/php:1:505971274c]
ale to tylko w ramach przypomnienia, ze istnieje alternatywa
lol
mam jeszcze jeden malutki problem. otoz jak wpisze w pierwsze pole slon to jest wszystko ok. ale jak wpisze slon slon to formularz nie dziala sad.gif
[php:1:d99edace4e]
<?
$a_tab[1]="mapla";
$a_tab[2]="ssak";
$a_tab[3]="lol";
if ($pier == "slon") {
$zlicz = count($a_tab);
$drug =$a_tab[rand(1, $zlicz)];
}

$forma1 = "<form method="POST" action="$PHP_SELF">
<textarea rows="5" name="pier" cols="40">$pier</textarea></p> <p>cos tam<br>
<textarea rows="5" name="drug" cols="40">$drug</textarea></p>
<p>&nbsp;</p>
<p><input type="submit" value="submit" name="submit"><input type="reset" value="wyczysc" name="reset"></p>
</form>";

echo "$forma1";
?>
[/php:1:d99edace4e]
voytass
1) ciag "slon slon" nie jest jednoznaczny z "slon" i dlatego skrypt przy tym pierwszym nie wchodzi do petli i przez to program nie 'dziala' (dziala ale nie tak jak chcesz - nie dziala to troche inna stan). musisz poczytac o funkcjach odnajdujacych jeden string w drugim (w przykladnie na dole zastosowalem stristr().

2) taka mala podpowiedz i rada, staraj sie minimalizowac wyswietlanie kodu HTML przez php. tam gdzie mozna to zamykaj php i podawaj kod HTML - bedzie szybciej dzialalo. I jeszcze jedno - nie komplikuj sobie przekazywania kodu HTML poprzez zmienne.

3) wektory zazwyczaj zaczyna sie od 0 a nie od 1 - czasem trzeba od 1 ale tutaj nie jest konieczne wiec zmienilem.

wszystkie 3 punkty zawarlem w ponizszym przykladzie

[php:1:ccf6ab1a10]<?
$a_tab= array ("mapla","ssak","lol");
if (stristr($pier,"slon")) {
$zlicz = count($a_tab);
$drug =$a_tab[rand(0, $zlicz-1)];
}
?>
<form method="POST" action="<? echo $PHP_SELF; ?>">
<textarea rows="5" name="pier" cols="40"><? echo $pier; ?></textarea></p>
<p>cos tam<br>
<textarea rows="5" name="drug" cols="40"><? echo $drug; ?></textarea></p>
<p>[space]</p>
<p><input type="submit" value="submit" name="submit">
<input type="reset" value="wyczysc" name="reset"></p>
</form>
<?
echo "costam dalej...";
?>[/php:1:ccf6ab1a10]
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.