Jump to content


Photo

Action Dor Form = $_server['php_self'];


  • Faça o login para participar
4 replies to this topic

#1 rsarracini

rsarracini

    Normal

  • Usuários
  • 90 posts
  • Sexo:Não informado

Posted 25/05/2006, 09:33

Sempre executei o form, com um segundo arquivo de execução no action do form, mas surgiu uma necessidade da execucao ser no mesmo arquivo, fiz uma pesquisa e achei esses comandos para essa finalidade... mas nao esta funcionando.

alguem pode me ajudar, com um help ou algum exemplo de como executar o form no mesmo arquivo.
Grato.




Esses comando estao certos?? sao esses mesmo q fazem isso??

$cod = isSet($_POST['cod'];
$nome = isSet($_POST['nome'])) ? $_POST['nome']:"";
$telefone = isSet($_POST['mensagem'] ? $_POST['mensagem']:"";
$contato = isSet($_POST['contato'] ? $_POST['contato']:"";

<form name="form1" method="post" action="="<? echo $_SERVER['PHP_SELF']?>">
<p>C&oacute;digo:
<input name="cod" type="text" id="cod" size="10">
Nome :
<input name="nome" type="text" id="nome" size="35">
</p>
<p>Contato :
<input name="contato" type="text" id="contato" size="17">
Telefone :
<input name="telefone" type="text" id="telefone">
</p>
<p>
<input name="ok" type="submit" id="ok" value="ok">
</p>
</form>
<?php include("cerebro.php");

$iniciando = "iniciando";
$iniciando .= "mas ja desenvolvendo";

echo "Valeu WMonline $iniciando";
?>

Icq : 70496896
msn: rickscbr@hotmail.com

#2 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 25/05/2006, 09:38

Talvez faltou um ponto e vírgula:
<? echo $_SERVER['PHP_SELF']; ?>
ou:
<?=$_SERVER['PHP_SELF']?>

Flws...
;)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br

#3 Balala

Balala

    What you want for yourself?

  • Ex-Admins
  • 3357 posts
  • Sexo:Não informado
  • Localidade:Jaraguá do Sul - SC
  • Interesses:http://forum.wmonline.com.br/index.php?showtopic=5792

Posted 25/05/2006, 09:45

Quanto ao ";", na verdade não é obrigatório se for o último comando, mas é bom acostumar ;)

$cod = isSet($_POST['cod']; 
$nome = isSet($_POST['nome'])) ? $_POST['nome']:""; 
$telefone = isSet($_POST['mensagem'] ? $_POST['mensagem']:""; 
$contato = isSet($_POST['contato'] ? $_POST['contato']:"";

Aqui, há uma séria de problemas:

. Parenteses não fechados;
. Operador Ternário mal aplicado (devido aos parentes)

$cod = isSet($_POST['cod']) ? $_POST['cod'] : 0; 
$nome = isSet($_POST['nome']) ? $_POST['nome'] : ""; 
$telefone = isSet($_POST['mensagem']) ? $_POST['mensagem'] : ""; 
$contato = isSet($_POST['contato']) ? $_POST['contato'] : "";

E em relação ao destino do form, deixando o action="" ele será enviado para a mesma página também.

(y)
Balala - Admin Geral Webfórum - Retired
Twitter
Stop Spreading Lies!
Posted Image

#4 rsarracini

rsarracini

    Normal

  • Usuários
  • 90 posts
  • Sexo:Não informado

Posted 25/05/2006, 09:53

realmente, esta com alguns erros de " ; " e de " ) ", eu revi e agora parou de dar o erro de sintax..

pergunta.. o codigo do insert no banco eu coloco após.. esse código??

$nome = isSet($_POST['nome']) ? $_POST['nome']:"";
$cod_datasul = isSet($_POST['cod_datasul']) ? $_POST['cod_datasul']:"";
$telefone = isSet($_POST['telefone']) ? $_POST['telefone']:"";
$contato = isSet($_POST['contato']) ? $_POST['contato']:"";

e como faco para mandar uma resposta do tipo, " cadastro efetuado com sucesso"??

claro q ainda vou restringir com algumas clausulas o cadastro, mas isso seria de menos no problema.
<?php include("cerebro.php");

$iniciando = "iniciando";
$iniciando .= "mas ja desenvolvendo";

echo "Valeu WMonline $iniciando";
?>

Icq : 70496896
msn: rickscbr@hotmail.com

#5 Paulo André

Paulo André

    Why so serious?

  • Ex-Admins
  • 5114 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte - MG
  • Interesses:O.Q.F.J.?

Posted 25/05/2006, 10:02

Sim, o do INSERT você coloca depois que você atribui os valores às variáveis.
Pra mandar uma resposta desse tipo, você pode fazer de duas formas:
<?
$insert = mysql_query("..");
if($insert){
  echo "<script>alert('Cadastro efetuado com sucesso!');</script>";
  header("Location: tal.php"); // voltar para alguma página
}else{
  echo "<script>alert('Ocorreu um erro bla bla bla...'); history.back();</script>";
}
?>
Ou, somente texto:
<?
$insert = mysql_query("..");
if($insert){
  echo "Cadastro efetuado com sucesso!'
		   <a href=\"index.php\">Continuar</a>";
}else{
  echo "Ocorreu um erro bla bla bla...<br />
		   <a href=\"java script:history.back();\">Voltar</a>";
}
?>
São só exemplos...

Flws...
;)Até mais
Paulo André G Rodrigues,
ex-administrador Fórum WMO.


www.CanalDev.com.br




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq