• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

NoOne

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

3 mensagens neste tópico

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

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros 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>');
}
?>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros 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>');
}
?>

Obrigado. Problema resolvido.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora