Część kodu:
$pytania=14;
$plik = fopen("baza.ant", "r");
for ($i=0;$i<($pytania);$i++)
{
for ($j=0;$j<5;$j++)
{
$linia=fgets($plik)."</br>";
$array[$i][$j]=$linia;
}
}
fclose($plik);
for ($k=0;$k<($pytania);$k++)
{
if (isset($_POST[$k]))
{
$tmp=$_POST[$k];
$tmp2=$array[$k][4];
echo $tmp2;
echo "</br></br></br>";
echo $array[$k][0]."</br>";
echo "Twoja odpowiedź: ".$array[$k][$tmp]."</br>";
echo "Poprawna odpowiedź".$array[$k][$tmp2];
}
}
$_POST[$k] zawiera cyferkę ze zbioru {1,2,3}
baza.ant to zwykły plik txt z 70 wierszami
$array[$k][4] to cyfra ze zbioru {1,2,3}
Po wykonaniu kodu pojawia mi się Notice: Undefined index: 1 </br> in D:\wamp\www\pro\index.php on line
W wierszu gdzie znajduje się echo “Poprawna odpowiedź”.$array[$k][$tmp2];
Nieoczekiwany </br> po cyferce. Skąd się wziął i jak to naprawić?
Wcześniej inicjuje ten element w tablicy.
$linia=fgets($plik)."</br>";
$array[$i][$j]=$linia;
ps. Właśnie zauważyłem że tu mi się wkradł ten </br>
Niestety po jego usunięciu komunikat o błędzie nie znikną tylko się zmienił.
$linia=fgets($plik);
$array[$i][$j]=$linia;
Notice: Undefined index: 1 in D:\wamp\www\pro\index.php on line
I teraz to zupełnie nie wiem gdzie jest błąd.
pps.w baza.ant nie ma żadnego znaku po zakończeniu każdego wiersza.
kostek135
(kostek135)
5 Kwiecień 2014 11:30
#4
Tak dla pewności, przeklej (używając CTRL A, CTRL C, CTRL V) zawartość pliku na tę stronę: http://wklej.to/ i podaj link
http://wklej.to/eBsJf
wiem że głupie ale ważna dla mnie jest ich ilość a nie jakość
kostek135
(kostek135)
5 Kwiecień 2014 11:39
#6
$tmp2 = (int) trim($array[$k][4]);
[EDIT]
Zmieniłem trochę miejsce w którym należy rzutować, bo poprzednie faktycznie było kiepskie, ogólnie słaby pomysł trzymać pytania w taki sposób (nie wygodne to, zastanów się nad json’em/xml’em)
Dzięki.
Nie zupełnie tak zmienić jak napisałeś.
A mianowicie tak:
$array[$i][$j]=$linia;
if ($j==4) $array[$i][$j]=(int) trim($linia); else $array[$i][$j]=$linia;
bo w reszcie są stringi a tylko w co piątym wierszu są inty.
Ale bez twojej pomocy bym nie dał rady. Po prostu nie wiedziałem że można z góry narzucić typ zmiennej.
Jeszcze raz dzięki