Jump to content


Photo

Problema Com Alerta


  • Faça o login para participar
1 reply to this topic

#1 Microbyte

Microbyte

    12 Horas

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

Posted 07/03/2007, 08:35

Oi.

Pra mostrar um alerta costumo usar java script:

<script>alert("oi")</script>


E também dá para usar com várias linhas:

<script>alert("oi \n esta é uma nova linha")</script>


era isto que eu queria fazer, mas com o PHP, ou seja, eu tenho várias variáveis em arrays que vêm do formulário e quero verificar quais são os campos que não estão preenchidos. Esses campos teriam de aparecer um por linha.
$requere = "";
if(empty($nome)){$requere = ";nome";}
if(empty($condicao)){$requere = $requere . ";condicao";}
if(empty($id_musica)){$requere = $requere . ";id_musica";}
if(empty($email)){$requere = $requere . ";email";}

if(!empty($requere)){
$campos = explode(";",$requere);
foreach ($campos as $key => $value) {
  if (empty($value)) {
	unset($campos[$key]);
  }
} 
$msg = "Faltam preencher os seguintes campos:";
foreach($campos as $key => $value){
	$msg = $msg . "$value \n";
}
}else{

	$msg = "Inscrição efectuada com sucesso!";
	$sqlquery = "INSERT INTO tbl_inscricoes (nome, condicao , id_musica, email) VALUES ('$nome', '$condicao', '$id_musica', '$email');";
$results = mysql_query($sqlquery) or die(mysql_error());
}
echo "<script>alert(\"" . $_GET['msg'] . "\")</script>";
?>

Mas a quebra de linha que faz é no código fonte e não no alerta. :(
Não sei o que fazer.

Alguém sabe como resolver?

#2 sk15

sk15

    Super Veterano

  • Usuários
  • 2071 posts
  • Sexo:Masculino
  • Localidade:SP - SP

Posted 07/03/2007, 09:10

Bem vamos lá ...

1- Só para confirmar seu servidor possui "Register_Globals = On", já que parece que vc esta usando um formulário e as variaveis não vem na "forma segura", $_POST["variavel"]...

2- Acredito que seu erro é simples vc está mandando a mensagem para "$msg" e tentado pegar ele com se fosse uma QueryString "$_GET["msg"]", eu dei uma refeita geral para melhorar o script ve se é isso ...

$requere = array();
if (empty($nome))	  { $requere[] = "nome";	  }
if (empty($condicao))  { $requere[] = "condicao";  }
if (empty($id_musica)) { $requere[] = "id_musica"; }
if (empty($email))	 { $requere[] = "email";	 }

if (count($requere)) {
 $msg = "Faltam preencher os seguintes campos:\\n";
 foreach ($requere as $key => $value) {
  $msg = $msg . $value . "\\n";
  unset($campos[$key]);
 }
} else {
 $msg = "Inscrição efectuada com sucesso!";
 $sqlquery = "INSERT INTO tbl_inscricoes (nome, condicao , id_musica, email) VALUES ('$nome', '$condicao', '$id_musica', '$email');";
 $results = mysql_query($sqlquery) or die(mysql_error());
}
echo '<script>alert("' . $msg . '")</script>';





1 user(s) are reading this topic

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

IPB Skin By Virteq