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

hugol

controlar a entrada de uma query com um confirm

3 mensagens neste tópico

Oi pessoal sou novo no forum e tenho uma duvida, estou quase a perceber o problema mas gostaria de uma ajuda ai dos experts da materia.

O problema é o seguinte:

Tenho um formolario em que o utilizador prenche uma lista de termos e quero que ao subemeter a form ele faz outra query e vai verificar se os termos que ele inseriu já existem na bd se sim manda uma Janela javascript confirm a dizer "encontramos termo X repetido deseja continuar?" se fizer ok ele insere outra x repetido se fizer cancelar ele retorna false e nao insere limpando a form.

O codigo é o seguinte:

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {

mysql_select_db($database_db_traducoes, $db_traducoes);
$query_igual = "SELECT * FROM linguas where pt_pt = '$_POST[pt_pt]' OR pt_br = '$_POST[pt_br]' OR en_uk = '$_POST[en_uk]' OR en_us = '$_POST[en_us]' OR esp = '$_POST[esp]' OR fr = '$_POST[fr]' OR it = '$_POST[it]' OR nl = '$_POST[nl]'";
$termo_igual = mysql_query($query_igual, $db_traducoes) or die(mysql_error());
$row_iguais = mysql_fetch_assoc($termo_igual);
$totalRows_iguais = mysql_num_rows($termo_igual);

//aqui verifica se ha termos iguais	
if($totalRows_iguais>0){
//confim provisorio
echo "<script>";
echo "confirm('Termos iguais.')";	
echo "</script>";
//devia bloquear a entrada ao insert ou nao consoante o que o utilizador desejar
  $insertSQL = sprintf("INSERT INTO linguas (id, pt_pt, pt_br, en_uk, en_us, esp, fr, it, nl, contexto_uso, comentario, data_criacao, data_edicao) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       GetSQLValueString($_POST['id'], "int"),
                       GetSQLValueString($_POST['pt_pt'], "text"),
                       GetSQLValueString($_POST['pt_br'], "text"),
                       GetSQLValueString($_POST['en_uk'], "text"),
                       GetSQLValueString($_POST['en_us'], "text"),
                       GetSQLValueString($_POST['esp'], "text"),
                       GetSQLValueString($_POST['fr'], "text"),
                       GetSQLValueString($_POST['it'], "text"),
                       GetSQLValueString($_POST['nl'], "text"),
                       GetSQLValueString($_POST['rte1'], "text"),
				   GetSQLValueString($_POST['rte2'], "text"),
				   GetSQLValueString($_POST['data'], "date"),
				   GetSQLValueString($_POST['data'], "date"));

  mysql_select_db($database_db_traducoes, $db_traducoes);
  $Result1 = mysql_query($insertSQL, $db_traducoes) or die(mysql_error());
}
}

Sei que tenho de ujar ajax mas como não percebo mt de ajax e de Httprequest gostaria se alguem tem uma solução para o meu problema

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes voltar à mesma página, preenches o formulario com os dados de $_POST e envias o formulário de volta se ele aceitar, e então inseres.

Tens é que ter algo que identifique que é uma confirmação. Podes pôr um campo hidden no formulário por ex.

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