Witam, tak jak w temacie zapętliłem się i nie wiem jak zbrekować tą pętle. Przedstawiony poniżej skrypt miał działać na celu.
Naciśnięcie przycisku
1 pole_wielokrotnego - utworzenia miejsca na pytania, także miejsce na dwie odp. Jeśli, został naciśnięty przycisk dodaj_odp: numer, miał się wyświetlić dodatkowe pole na odp. Następnie wyświetlenia jeśli były poprzednich pytań i odp.
2 pole_jednokrotnego - tak samo dla wielokrotnego tylko zamiast kratek na wielokrotne to na jednokrotne.
3 pole_tekstowe - wyświetlenie pola tekstowego o domyślnych parametrach.
I mój błąd polega, że zwątpiłem bo ciągle wyskakują dziwnego pochodzenia błędy:
Cytat
Notice: Undefined offset: 5 in C:\Programy\SERWERWWW\htdocs\innawersja\dodawaniequizu.php on line 67
A dotyczą co dziwniejsze:
switch($tablica[$i]['typpola'])
Próbowałem żałośnie także usunąć wszystko z $_SESSION['dane'] i przywrócić formularz do formy pierwotnej jaką widujemy na początku, ale także ta próba umarła.
A oto cały kod:
<?php
/*
W - pole wielokrotnego wyboru
J - pole jednokrotnego wyboru
T - pole tekstowe
*/
if(!(empty($_SESSION['dane']))){$tablica=$_SESSION['dane'];} {
$ostatni=$keys[count($keys)-1
]; $ostatni+=1;
}
else {$ostatni=1;}
if(!(empty($_GET['dodac']))) {
switch($_GET['dodac'])
{
case 'pole_wielokrotnego':
{
$tablica[$ostatni]['name']='pytanie'.$ostatni;
$tablica[$ostatni]['value']='';
$tablica[$ostatni]['typpola']='W';
$tablica[$ostatni]['poprawna']='';
$tablica[$ostatni]['liczbaodp']=0;
$tablica[$ostatni][0]='';
break;
}
case 'pole_jednokrotnego':
{
$tablica[$ostatni]['name']='pytanie'.$ostatni;
$tablica[$ostatni]['value']='';
$tablica[$ostatni]['typpola']='J';
$tablica[$ostatni]['poprawna']='';
$tablica[$ostatni]['liczbaodp']=0;
$tablica[$ostatni][0]='';
break;
}
case 'pole_tekstowe':
{
$tablica[$ostatni]['name']='pytanie'.$ostatni;
$tablica[$ostatni]['typpola']='T';
$tablica[$ostatni]['value']='';
break;
}
/*case 'skasuj':
{
unset($_SESSION['dane']);
header('Location: index.php');
}*/
}
$odpowiedznr=explode(':',$_GET['dodac']); $ostatniodp = $keys[count($keys)-1
]; if($ostatniodp>0) {$tablica[$odpowiedznr[1]]['liczbaodp']+=1;}
}
echo '<html><head><title>Tworus Lukasz</title><meta name="author" content="Tworus Łukasz"><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> </head><body><form action="dodawaniequizu.php"><table border="1">';
//****************MOZNA SKASOWAC POZNIEJ***********
// echo '<tr><td><input type="submit" value="skasuj"></td></tr>';
//*************************************************
{
for($i=1; $i<$ostatni+1; $i++)
{
switch($tablica[$i]['typpola'])
{
case 'T':
{
echo '<tr><td>'.$i.' <input type="text" name="'.$tablica[$i]['name'].'"'; if(!(empty($tablica[$i]['value']))) {echo 'value="'.$tablica[$i]['value'].'"';} break;
}
case 'J':
{
echo '<tr><td>'.$i.' <input type="text" name="'.$tablica[$i]['name'].'"'; if(!(empty($tablica[$i]['value']))) {echo 'value="'.$tablica[$i]['value'].'"';} if($tablica[$i]['liczbaodp']==0) {$tablica[$i]['liczbaodp']=1;}
for($j=0; $j<$tablica[$i]['liczbaodp']+1; $j++)
{
echo '<tr><td><input type="radio" name="odpowiedz'.$ostatni.'" value="'.$j.'"> <input type"text" name="odpowiedztekst'.$ostatni.'"'; if(!(empty($tablica[$i][$j]))){echo 'value="'.$tablica[$i][$j].'"';} }
echo '<tr><td><input type="submit" value="dodajodp:'.$i.'" name="dodac"></td></tr>'; break;
}
case 'W':
{
echo '<tr><td>'.$i.' <input type="text" name="'.$tablica[$i]['name'].'"'; if(!(empty($tablica[$i]['value']))) {echo 'value="'.$tablica[$i]['value'].'"';} if($tablica[$i]['liczbaodp']==0) {$tablica[$i]['liczbaodp']=1;}
for($j=0; $j<$tablica[$i]['liczbaodp']+1; $j++)
{
echo '<tr><td><input type="checkbox" name="odpowiedz'.$ostatni.'" value="'.$j.'"> <input type"text" name="odpowiedztekst'.$ostatni.'"'; if(!(empty($tablica[$i][$j]))){echo 'value="'.$tablica[$i][$j].'"';} }
echo '<tr><td><input type="submit" value="dodajodp:'.$i.'" name="dodac"></td></tr>'; break;
}
}
}
$_SESSION['dane']=$tablica;
}
echo'<tr><td><input type="submit" value="pole_wielokrotnego" name="dodac"><input type="submit" value="pole_jednokrotnego" name="dodac"> <input type="submit" value="pole_tekstowe" name="dodac"> <br></td>
<tr>
<td><input type="submit" value="wyslij"></td>
</tr>
</table></form></body></html>';
?>