webForumDet fria alternativet

Problem med formulärdata

PHP

5 svar · 337 visningar · startad av lilja

Medlem sedan juli 20041 183 inlägg
Frågan#1

Jag har ett formulär med 6 frågor i 3 kategorier.

Första frågan har 5 svarsalternativ i form av radiobuttons. Namnet på de fem är "reply1.1". Andra frågan i den kategori är likadan men heter "reply1.2". Nästa 5 heter "reply2.1" osv. När jag sedan försöker loopa igenom dessa i php vill det inte fungera.

Det fungerar om jag tar bort punkten. Jag vill dock inte göra det då formuläret är en uppgift som vi ska göra i skolan. Vi fick formuläret från läraren.

När jag tar emot data använder jag '-tecken och då borde väl punkten inte spela någon roll???

Någon som har en ide. Dett känns så enkelt men jag hittar inget svar :(

Medlem sedan aug. 20039 340 inlägg
#2

lite kod skulle inte skada...

Medlem sedan juli 20041 183 inlägg
#3

http://www.cs.ucf.edu/~jmmoshell/DIG4921c/lab1assignment.html

Där är länken till formuläret. Jag har nog dessutom tänkt lite fel i PHP-koden men jag har fortfarande problem att ta emot data när radiobuttons heter något.med.punkt

Medlem sedan juni 20031 837 inlägg
#4

testa att skriva ut $_REQUEST med print_r

print_r($_REQUEST);

Hittar du inte lösningen så kan du få mer hjälp.
tyckte det var bättre du fick debugga koden lite själv.
Hoppas inte detta ska räknas som fusk då jag bara gav tips hur du ska felsöka.

Medlem sedan juli 20041 183 inlägg
#5

Jag vill lära mig och inte fuska! :)

Det verkar som att en . omvandlas till ett _ tecken.

Kan ju vara så att läraren inte tänkt på det också. Verkar nästan så. Tack, jag tror jag löst det nu. Ska bara se om jag får till det innan jag accepterar :)

Medlem sedan juli 20041 183 inlägg
#6

Jag löste det nu :) Tog bort punkterna så att radio-knapparna (vad fasen heter det på svenska? :P) så nu heter de reply11, reply12, reply21, reply22 osv...

Sedasn fångar jag informationen med följande kod:

$arrGrades[1]=0;
	$arrGrades[2]=0;
	$arrGrades[3]=0;
	$arrGrades[4]=0;
	$arrGrades[5]=0;
	
	// Loop trough all the questions
	for($category=1; $category<=3; $category++)
	{
		// Loop trough all the alternatives
		for($question=1; $question<=2; $question++)
		{
			$arrGrades[$_POST['reply'.$category.$question]] += 1;
		}
	}

Sen för att få ut hur många svar av en viss typ (1=Great, 2=SoSo, osv) jag får skriver jag bara:

<?php print $arrGrades[1]; ?>
263 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)