Foros del Web » Programando para Internet » PHP »

Como hacer para que no se ejecuten a la vez estos comandos?

Estas en el tema de Como hacer para que no se ejecuten a la vez estos comandos? en el foro de PHP en Foros del Web. Hola antes de nada voy a pegar el codigo y os digo el problema: Código PHP: <? $cadena = $_POST [ 'numero' ]; if ( ereg ...
  #1 (permalink)  
Antiguo 25/12/2003, 08:49
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
Como hacer para que no se ejecuten a la vez estos comandos?

Hola antes de nada voy a pegar el codigo y os digo el problema:

Código PHP:
<?
$cadena
=$_POST['numero'];
if (
ereg("^(625|655)([0-9]{6})$",$cadena)) {
include(
"config.php"); 
$resp mysql_query("select * from proyecto where usuarios='$cadena'") or die (mysql_error()); 
if(
mysql_num_rows($resp) != "0") { 
echo 
" el nick existe "
} else { 
$ins  mysql_query("insert into proyecto (usuarios,contrasenas) VALUES ('$cadena','$_POST[texto]')") or die (mysql_error()); 
echo 
"datos insertados"

if(!
$ins) { echo "No se han podido introducir datos"; }
$comando "gsgc --host localhost --send " $_POST['numero'] . " \""$_POST['texto'] . " Esta es tu contraseña" "\"" ;
exec ($comando); 
} else {
echo 
"no valido: $cadena";
}
?>
Este codigo recoge mediante post "texto" y "numero"

Si detecta que numero no empieza por 625 o 655 o no tiene 9 cifras, manda un mensaje de error. Por aqui todo perfecto

Si el numero es valido por ejemplo 625000000 ejecuta el segundo modo de seguridad mirar en base de datos si 625000000 existe si no existe envia los datos a la base de datos si existe muestra un mensaje error.

Ademas de insertar los valores en la base de datos ejecuta otro codigo:
Código PHP:
$comando "gsgc --host localhost --send " $_POST['numero'] . " \""$_POST['texto'] . " Esta es tu contraseña" "\"" ;
exec ($comando); 
Bien si detecta que ese numero no esta en base de datos perfecto introduce los datos en la base de datos y a la vez ejecuta el anterior comando. Aqui viene el problema: resulta que si existe 625000000 en la base de datos envia un mensaje de error (el nick existe) y no lo inserta porque ya existe PERO me ejecuta:
Código PHP:
$comando "gsgc --host localhost --send " $_POST['numero'] . " \""$_POST['texto'] . " Esta es tu contraseña" "\"" ;
exec ($comando); 
Me gustaria modificar mi codigo para que cuando detecte que existe el nick ademas de mandar el mensaje de error (el nick existe) no ejecute ese comando, ese comando solo puede ser ejecutado cuando 625000000 no existe, en ese caso, se introduce en la base de datos y ejecuta el comando

Gracias, a ver si me podeis ayudar
espero sus respuestas, saludos
  #2 (permalink)  
Antiguo 25/12/2003, 10:39
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
ya acabo de solucionarlo
saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:38.