felipeatto Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 aí galera !...o warning é o seguinte !Warning: Invalid argument supplied for foreach() in C:\apache\htdocs\contratosweb\cef\cadastro_placas\resultado.php on line 14.. o código é esse:<?phpif ($tipo == "" || $part == "" || $numero == ""){echo"<table border=1 align=center bordercolor=red><tr><td><center><font size=\"5\" color=\"#FF0000\">"; echo"O Cadastro Possúi Campo(s) Em Branco!</font></center></td></tr>"; echo"<tr><td><a href=\"javascript:history.go(-1)\"><center><b><font color=red>VOLTAR</font></b></center></td></tr></table>"; return 0;}//aqui chama a pagina que esta a configuração da sua conexaoinclude "conecta.php";include "valida_data.php";// essa função pega os campos do form e cria a variavel com o mesmo nomeforeach ($_POST as $campo => $valor) { $$campo = $valor; }if (!validar($dia, $mes, $ano)){echo "<center><font color=red>Data Inválida : $dia/$mes/$ano </font></center><br> <a href=\"javascript:history.go(-1)\"><center>Voltar</center></a>";exit();}$entrada = "$ano-$mes-$dia";// ele vai pegar a data e deixar assim 0000-00-00mysql_query("INSERT INTO tabelateste VALUES ('$tipo', '$part', '$central','$numero', '$entrada', '$fornecedor', '$notaf', '$prateleira', '$obs')");if (mysql_query){echo "<table border=1 align=center><tr><td><center><font size=\"5\" color=\"#000000\"> Cadastro Executado Com Sucesso!!!</font></center></td></tr>";echo "<tr><td><a href=\"//localhost/contratosweb/cef/Cadastro_Placas/cefcadplacas.php\"> <center><b><font color=\"#000000\">Novo Cadastro</font></b></center></a></td></tr></table>";}?>vlws!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Tem um alien no seu código: foreach ($_POST as $campo => $valor) { $$campo = $valor; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 4, 2004 Autor Denunciar Share Postado Maio 4, 2004 eu tiro aquele $$campo??/ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Tem um alien no seu código: foreach ($_POST as $campo => $valor) { $$campo = $valor; } Que alen?foreach ($_POST as $campo => $valor) { $$campo = $valor; }Não sabe pra que serve isso?esta correto essa função se quiser eu te explico o que ela fazobs o foreach ($_POST as $campo => $valor) { $$campo = $valor; }ele recebe os dados de um campo olha o nome que ta e cria a variavel com o nome exemplo : vem um campo nome dai ele pega e cria o $nomenão tem segredo e não é nenhum alen e faz parte do php ,o que pode estar acontecendo é que se você tiver com o registers_globals em on não iri precisar criar a variavel Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Não, aquela função ali tá certa... pelo menos, eu acho. É uma variável variável, não tá errado, não.Existe alguma coisa nesse array $_POST quando você carrega a página? Acho que ele está dando erro na hora de incluir um valor de uma variável no BD, pois na hora que ele vai buscar da onde veio aquela variável, ele vai na função "foreach". E acho que daria erro se esse array não estiver definido...você não tá carregando essa página "resultado.php" diretamente, né? Eu digo, sem passar pelo form... ??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 4, 2004 Autor Denunciar Share Postado Maio 4, 2004 primeiro a resultado.php vem de um form, depois do form ela vai nessa ! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 4, 2004 Autor Denunciar Share Postado Maio 4, 2004 olha o fonte da form...:<html><body><tr><big><u>Cadastro de Placas:</u></big></tr><br><html><body><form name="cadastro" method="post" action="resultado.php"> <table border=0> <br> <tr> <td width=200>Tipo da Placa:</td> <td><input type="text" name="tipo" size=15></td> </tr> <tr> <td>Part-Number:</td> <td><input type="text" name="part" size=30></td> </tr> <tr> <td>Central:</td> <td><input type="text" name="central" size=15></td> </tr> <tr> <td>Número de Série:</td> <td><input type="text" name="numero" size=10></td> </tr> <tr> <td>Data de Entrada:</td> <td><?// construindo o select do diaecho "<select name=\"dia\">\n";for ($i = 1; $i <= 31; $i++) { $i = sprintf("%02d", $i); // preencher com zero a esquerda echo "\t<option value=$i>$i</option>\n";}echo "</select>";?> <?echo "/ "; // construindo o select do mesecho "<select name=\"mes\">\n";for ($i = 1; $i <= 12; $i++) { $i = sprintf("%02d", $i); // preencher com zero a esquerda echo "\t<option value=$i>$i</option>\n";}echo "</select>";?> <?echo "/ "; // construindo o select do anoecho "<select name=\"ano\">\n";for ($i = 2003; $i <= 2004; $i++) echo "\t<option value=$i>$i</option>\n";echo "</select>";?></td> </tr> <tr> <td>Fornecedor:</td> <td><input type="text" name="fornecedor" size=20></td> </tr> <tr> <td>Nota Fiscal nº:</td> <td><input type="text" name="notaf" size=10></td> </tr> <tr> <td>Prateleira:</td> <td><input type="text" name="prateleira" size=5></td> </tr> <tr> <td>Observação:</td> <td><textarea name="obs" cols=20 rows=3></textarea></td> </table><tr><input type="submit" name="botao" value="Salvar Cadastro"></tr></form></body></html> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Se esta repassando os dados de uma pra outra você tem que fazer assim na primeira pagina você recebe os dados normal mas quando for pra mandar pra outra vc manda assim pagina.php?nome=$nome&senha=$senha etc...dai você vai receber na outra os dados pelo GET Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Tem um alien no seu código: foreach ($_POST as $campo => $valor) { $$campo = $valor; } Que alen?foreach ($_POST as $campo => $valor) { $$campo = $valor; }Não sabe pra que serve isso?esta correto essa função se quiser eu te explico o que ela fazobs o foreach ($_POST as $campo => $valor) { $$campo = $valor; }ele recebe os dados de um campo olha o nome que ta e cria a variavel com o nome exemplo : vem um campo nome dai ele pega e cria o $nomenão tem segredo e não é nenhum alen e faz parte do php ,o que pode estar acontecendo é que se você tiver com o registers_globals em on não iri precisar criar a variavel O sr. tem razão... eu não prestei atenção no que a função faz...desculpem a minha inguinorânssa Mas alen são aquelas chavezinhas hexagonais que a gente usa pra mexer na bicicleta... aquilo ali em cima é um alien... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 4, 2004 Denunciar Share Postado Maio 4, 2004 Tem razao = ) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 4, 2004 Autor Denunciar Share Postado Maio 4, 2004 ...cara mas mesmo assim continuo na mesma do warning...aí vão meus dois códigos !o do form principal :<html><body><tr><big><u>Cadastro de Placas:</u></big></tr><br><html><body><form name="cadastro" method="post" action="resultado.php"> <table border=0> <br> <tr> <td width=200>Tipo da Placa:</td> <td><input type="text" name="tipo" size=15></td> </tr> <tr> <td>Part-Number:</td> <td><input type="text" name="part" size=30></td> </tr> <tr> <td>Central:</td> <td><input type="text" name="central" size=15></td> </tr> <tr> <td>Número de Série:</td> <td><input type="text" name="numero" size=10></td> </tr> <tr> <td>Data de Entrada:</td> <td><?// construindo o select do diaecho "<select name=\"dia\">\n";for ($i = 1; $i <= 31; $i++) { $i = sprintf("%02d", $i); // preencher com zero a esquerda echo "\t<option value=$i>$i</option>\n";}echo "</select>";?> <?echo "/ "; // construindo o select do mesecho "<select name=\"mes\">\n";for ($i = 1; $i <= 12; $i++) { $i = sprintf("%02d", $i); // preencher com zero a esquerda echo "\t<option value=$i>$i</option>\n";}echo "</select>";?> <?echo "/ "; // construindo o select do anoecho "<select name=\"ano\">\n";for ($i = 2003; $i <= 2004; $i++) echo "\t<option value=$i>$i</option>\n";echo "</select>";?></td> </tr> <tr> <td>Fornecedor:</td> <td><input type="text" name="fornecedor" size=20></td> </tr> <tr> <td>Nota Fiscal nº:</td> <td><input type="text" name="notaf" size=10></td> </tr> <tr> <td>Prateleira:</td> <td><input type="text" name="prateleira" size=5></td> </tr> <tr> <td>Observação:</td> <td><textarea name="obs" cols=20 rows=3></textarea></td> </table><tr><input type="submit" name="botao" value="Salvar Cadastro"></tr></form></body></html>e o da página de resultado:<?phpif ($tipo == "" || $part == "" || $numero == ""){echo"<table border=1 align=center bordercolor=red><tr><td><center><font size=\"5\" color=\"#FF0000\">"; echo"O Cadastro Possúi Campo(s) Em Branco!</font></center></td></tr>"; echo"<tr><td><a href=\"javascript:history.go(-1)\"><center><b><font color=red>VOLTAR</font></b></center></td></tr></table>"; return 0;}//aqui chama a pagina que esta a configuração da sua conexaoinclude "conecta.php";include "valida_data.php";// essa função pega os campos do form e cria a variavel com o mesmo nomeforeach ($_POST as $campo => $valor) { $$campo = $valor; }if (!validar($dia, $mes, $ano)){echo "<center><font color=red>Data Inválida : $dia/$mes/$ano </font></center><br> <a href=\"javascript:history.go(-1)\"><center>Voltar</center></a>";exit();}$entrada = "$ano-$mes-$dia";// ele vai pegar a data e deixar assim 0000-00-00mysql_query("INSERT INTO tabelateste VALUES ('$tipo', '$part', '$central','$numero', '$entrada', '$fornecedor', '$notaf', '$prateleira', '$obs')");if (mysql_query){echo "<table border=1 align=center><tr><td><center><font size=\"5\" color=\"#000000\"> Cadastro Executado Com Sucesso!!!</font></center></td></tr>";echo "<tr><td><a href=\"//localhost/contratosweb/cef/Cadastro_Placas/cefcadplacas.php\"> <center><b><font color=\"#000000\">Novo Cadastro</font></b></center></a></td></tr></table>";}?>mexi em um kilo de coisas e não acho o motivo do warning... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 5, 2004 Denunciar Share Postado Maio 5, 2004 if (mysql_query){echo "<table border=1 align=center><tr><td><center><font size=\"5\" color=\"#000000\">Cadastro Executado Com Sucesso!!!</font></center></td></tr> <tr><td><a href=\"cefcadplacas.php\"><center><b><font color=\"#000000\">Novo Cadastro</font></b></center></a></td></tr></table>";}presta atenção que você errou no link Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 5, 2004 Autor Denunciar Share Postado Maio 5, 2004 blza já arrumei lá, mas lá não era o problema...tava encontrando o link também,....oque eu estou encucado é aquele warning... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 5, 2004 Denunciar Share Postado Maio 5, 2004 você ta usando o registers globals on ???porque se tiver em on você não precisa usar o foreach Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 6, 2004 Autor Denunciar Share Postado Maio 6, 2004 cara agora eu não sei... estou aprendendo php agora ...eu tenho q declarar isso?..onde? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 6, 2004 Denunciar Share Postado Maio 6, 2004 ache o php.ini e dentro dele procure por registers_globals on e deixe em offdai você reinicia o serviço do apache pra funcionar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 6, 2004 Autor Denunciar Share Postado Maio 6, 2004 beleza...vou fazer...mas enquanto isso me diz uma coisinha??..porque eu não consigo por uma foto nas minhas propriedades como você tem o cara com o pinguim na mão, ou o símbolo do apache !???? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Fabyo Postado Maio 6, 2004 Denunciar Share Postado Maio 6, 2004 vai no painel de controle dai você coloca o link da foto que você querem alterar avatar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 6, 2004 Autor Denunciar Share Postado Maio 6, 2004 não funciona mas td bem..desisto, amanhã tento mais.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 blood Postado Maio 6, 2004 Denunciar Share Postado Maio 6, 2004 cara.... a url da tua IMG ta assim!!http://http://www.ok-mining.com/images/tux.gifnão precisa de http:// não é?? hehhe bota assim.. http://www.ok-mining.com/images/tux.gifflws Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipeatto Postado Maio 7, 2004 Autor Denunciar Share Postado Maio 7, 2004 blza...alguém aki já tem esse avatar?????? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Kevin Postado Maio 27, 2004 Denunciar Share Postado Maio 27, 2004 axo q não hehehe Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
felipeatto
aí galera !...o warning é o seguinte !
Warning: Invalid argument supplied for foreach() in C:\apache\htdocs\contratosweb\cef\cadastro_placas\resultado.php on line 14
.
.
o código é esse:
<?php
if ($tipo == "" || $part == "" || $numero == ""){
echo"<table border=1 align=center bordercolor=red><tr><td><center><font size=\"5\" color=\"#FF0000\">";
echo"O Cadastro Possúi Campo(s) Em Branco!</font></center></td></tr>";
echo"<tr><td><a href=\"javascript:history.go(-1)\"><center><b><font color=red>VOLTAR</font></b></center></td></tr></table>";
return 0;}
//aqui chama a pagina que esta a configuração da sua conexao
include "conecta.php";
include "valida_data.php";
// essa função pega os campos do form e cria a variavel com o mesmo nome
foreach ($_POST as $campo => $valor) { $$campo = $valor; }
if (!validar($dia, $mes, $ano)){
echo "<center><font color=red>Data Inválida : $dia/$mes/$ano </font></center><br>
<a href=\"javascript:history.go(-1)\"><center>Voltar</center></a>";
exit();
}
$entrada = "$ano-$mes-$dia";// ele vai pegar a data e deixar assim 0000-00-00
mysql_query("INSERT INTO tabelateste VALUES ('$tipo', '$part', '$central',
'$numero', '$entrada', '$fornecedor', '$notaf', '$prateleira', '$obs')");
if (mysql_query){
echo "<table border=1 align=center><tr><td><center><font size=\"5\" color=\"#000000\">
Cadastro Executado Com Sucesso!!!</font></center></td></tr>";
echo "<tr><td><a href=\"//localhost/contratosweb/cef/Cadastro_Placas/cefcadplacas.php\">
<center><b><font color=\"#000000\">Novo Cadastro</font></b></center></a></td></tr></table>";}
?>
vlws!!!
Link para o comentário
Compartilhar em outros sites
21 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.