Jump to content

[RESOLVIDO] ler checkbox's desconhecendo a quantidade à partida.


Guest NoOne
 Share

Recommended Posts

Guest NoOne

Boa noite, então é o seguinte eu tenho um formulário que consiste na inserção dos dados de um jogo de futebol. então vou ter um conjunto de checkboxs (para seleccionar os jogadores que estiveram presentes no jogo) e um conjunto de input box's (para inserir quantos golos marcou cada jogador). A minha dúvida é: na leitura dos dados do form, como leio os dados de todos os jogadores se não sei à partida quantos vão ser ?

Pedaço de código referentes ao form

<form action="novo_jogo.php" METHOD="POST" >
		  <table width="427" border="0">
                <tr>
                  <td width="177">id Adversário</td>
                  <td width="240">
                  	<input type="text" value="" size="5" name="Equipa"/> 
                    <A HREF="listaequipas.php" onClick="return popup(this, 'notes')">ver lista</A>
                </tr>
                <tr>
                  <td>Resultado</td>
                  <td><input type="text" value="" size="3" name="GolosMarcados"/>     -
                    <input type="text" value="" size="3" name="GolosSofridos"/></td>
                </tr>
                <tr><td> Tipo de Jogo: </td><td> <input type="text" value="" size="22" name="TipoJogo"/></td> </tr>
			<tr><td>Jogadores:</td> <td>Golos: </td></tr>
             
                <?php


                    $sql='Select * from utilizador';
                    
                    $resultado=mysql_query($sql);
                    $i=1;
                    while($registo=mysql_fetch_row($resultado)){

                        print ("<tr>  <td>
					<label>
					 <input type='checkbox' name='CheckBox' id='CheckBox_$i' /> $registo[1]
					 </label>
					 </td>

					 <td><input type='text' value='0' size='2' name='GolosMarcados_$i'/> </td>
					 </tr>");
					 $i++;
                    }
			?>
                <td colspan="3"><center><input type="submit" value="Ok" name="validar"/></center> </td>
              </table>
            </form>

pedaço de código que chama a função de validação do form

<?php
   	
 include ("functions.php");
	if(isset($_POST['validar']))
	 {
		$error = novojogo_check($_POST);

		if (trim($error)=="")
		{
		   Header("Location: admin.php");
		   exit();
		}
		else
		   echo '<script>alert("'.$error.'")</script>';
	 }
?>

Function que verifica o form

function novojogo_check ($forms)
{	 
require("liga.php");
$adversario=$forms['Equipa'];
$golosmarcados=$forms['GolosMarcados'];
$golossofridos=$forms['GolosSofridos'];
$tipoJogo=$forms['TipoJogo'];

if ($adversario=="")
	return "Escolha uma equipa.";
if (trim($golosmarcados) == "")
        return "Inserira o numero de Golos Marcados.";
if (trim($golossofridos) == "")
        return "Inserira o numero de Golos Sofridos.";
if (trim($tipoJogo) == "")
        return "Inserira o tipo de Jogo.";
}

Espero ter me explicado bem. ah, e tenho a dizer que sou um principiante em php... espero não sofrer um "espancamento público" por algum possível erro crasso ou dúvida estúpida lol

Link to comment
Share on other sites

Um exemplo simples de como fazer:

<?
$lim=count($_POST);
$array=array_keys($_POST);
for ($i=0;$i<=$lim;++$i)
{
echo('O campo é: '.$array[$i].'  e o valor é: '.$_POST[$array[$i]].'<br>');
}
?>

"Quando eu for grande quero ser como o Celso"

Link to comment
Share on other sites

Guest NoOne

Um exemplo simples de como fazer:

<?
$lim=count($_POST);
$array=array_keys($_POST);
for ($i=0;$i<=$lim;++$i)
{
echo('O campo é: '.$array[$i].'  e o valor é: '.$_POST[$array[$i]].'<br>');
}
?>

Obrigado. Problema resolvido.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.