[ IcemanX @ 24.09.2011. 21:38 ] @
Poštovanje,

Vežbam PHP na nekim primerima pa sam naišao na problem.Tj. želeo bih malu php skriptu koja mi računa prosek za predmete,korisnik unosi ime predmeta i ocenu ..klikom na dugme submit u tabeli se prikazuje dati unos i ispod mi kao izlaz daje prosek za date ocene.Postoji 15 input formi koje korisnik moze da ispuni,korisnik ne mora da unese svih 15 predemta, zeleo bih mehanizam koji ce da "proleti kroz" formu i sabere koliko unosa postoji i da taj broj bude delilac ukupnog zbira unosa.Prva ideja mi je bila da to odradim pomocu niza pa da saberem koliko postoji clanova niza i da zbir podelim s brojem clanova niza,.medjutim verovatno posto sam jos pocetnik nisam razumio kako to sve funkcionise ..Uvek mi u nizu postoji 15 clanova i ako unesem samo 2 predmeta on ce i dalje da ih podeli s 15 umesto sa 2..evo mog coda-a pa ako moze neko da pomogne bio bih zahvalan

Hvala unapred,

html code sto se tice forme (skratio sam nepotrebni dio)

Code:
<html>


        <form name="input" action="prosjek.php" method="POST">
<table border="0" width="30%">
<font face="Trebuchet MS" color="#217FC2">
<tr align="center">
<td><h3>Naziv predmeta</h3></td>
<td><h3>Ocijena</h3><td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet1"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena1"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet2"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena2" /></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet3"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena3" /></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet4"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena4"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet5"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena5"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet6"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena6"/></td>
</tr><tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet7"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena7"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet8"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena8"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet9"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena9"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet10"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena10"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet11"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena11"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet12"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena12"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet13"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena13"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet14"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena14"/></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="text" name="predmet15"></td>
<td><input type="text" onkeyup="javascript:this.value=this.value.replace(/[^0-5]/g, '');" name="ocjena15" /></td>
</tr>
<tr>
<td colspan="2"><hr width="100%"></td>
</tr>
<tr align="center">
<td><input type="submit" value="Potvrdi" /></td>
<td><input type="reset" value="Resetuj" /></td>
</tr>
</form> 
</font>
</table>
        </td>
        </div>
    </tr>
    



i php file

Code:
<html>

<?php


$predmet1 = $_POST['predmet1'];
$var[] = $_POST['ocjena1'];


$predmet2 = $_POST['predmet2'];
$var[] = $_POST['ocjena2'];


$predmet3 = $_POST['predmet3'];
$var[] = $_POST['ocjena3'];


$predmet4 = $_POST['predmet4'];
$var[]  = $_POST['ocjena4'];


$predmet5 = $_POST['predmet5'];
$var[]  = $_POST['ocjena5'];


$predmet6 = $_POST['predmet6'];
$var[]  = $_POST['ocjena6'];


$predmet7 = $_POST['predmet7'];
$var[]  = $_POST['ocjena7'];


$predmet8 = $_POST['predmet8'];
$var[]  = $_POST['ocjena8'];

$predmet9 = $_POST['predmet9'];
$var[]  = $_POST['ocjena9'];


$predmet10 = $_POST['predmet10'];
$var[]  = $_POST['ocjena10'];


$predmet11 = $_POST['predmet11'];
$var[]  = $_POST['ocjena11'];


$predmet12 = $_POST['predmet12'];
$var[]  = $_POST['ocjena12'];


$predmet13 = $_POST['predmet13'];
$var[] = $_POST['ocjena13'];


$predmet14 = $_POST['predmet14'];
$var[]  = $_POST['ocjena14'];


$predmet15 = $_POST['predmet15'];
$var[]  = $_POST['ocjena15'];

$zbir = array_sum($var);
$n = count($var);
$prosjek = $zbir/$n;
echo "
<table border='0' width='30%'>
<font face='Trebuchet MS' color='#217FC2'>
<tr align='center'>
<td><h3>Naziv predmeta</h3></td>
<td><h3>Ocijena</h3><td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet1</td>
<td>$var[0]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet2</td>
<td>$var[1]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet3</td>
<td>$var[2]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet4</td>
<td>$var[3]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet5</td>
<td>$var[4]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet6</td>
<td>$var[5]</td>
</tr><tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet7</td>
<td>$var[6]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet8</td>
<td>$var[7]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet9</td>
<td>$var[8]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet10</td>
<td>$var[9]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet11</td>
<td>$var[10]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet12</td>
<td>$var[11]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet13</td>
<td>$var[12]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet14</td>
<td>$var[13]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td>$predmet15</td>
<td>$var[14]</td>
</tr>
<tr>
<td colspan='2'><hr width='100%'></td>
</tr>
<tr align='center'>
<td colspan='2'><h1>Prosijek iznosi: '$prosjek' </h1></td>
</tr>
</font>
</table>";
?>
        </td>
        </div>
    </tr>
    

</html>
[ dakipro @ 24.09.2011. 21:44 ] @
Koristi IF !='', a sledeci korak je da napravis petlju koja ce da crta tabelu i petlju koja ce da lista sve podatke, tako da imas 20 linija koda umesto trenutnih 300, i to za beskonacno predmeta
[ ivan veljovic @ 05.10.2011. 23:56 ] @
kod ti je mnogo veliki. organizuj to malo drugacije, kao sto covek rece u prethodnom komentaru.

sto se tice broja ocena tu prebrojavas samo ona polja u kojima postoji broj, ne i prazna polja
u kojima nista nije upisano.