Foros del Web » Programando para Internet » PHP »

Como Ordenar el Código

Estas en el tema de Como Ordenar el Código en el foro de PHP en Foros del Web. Hola Maestros. Vengo con una duda estúpida, pasa que yo empiezo de Adelante para Atrás jajajaj. El tema es que tengo fragmentos de código dispersos ...
  #1 (permalink)  
Antiguo 24/07/2010, 13:39
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Como Ordenar el Código

Hola Maestros. Vengo con una duda estúpida, pasa que yo empiezo de Adelante para Atrás jajajaj.

El tema es que tengo fragmentos de código dispersos que funcionan (los probé a todo) y los quiero ordenar de cierta forma y no puedo.

Bien, les comento lo que estoy haciendo.
Esto es un intento de Registro de nueva Cuenta con Algoritmo Aleatorio.
En resumen, un creador de cuentas que te da un usuario y contraseña generado aleatoriamente.

Este es un esquema que hise cuando me lo plantie:



Y estos son los códigos que tengo:


Conectarse al Servidor SQL

Código PHP:
// Conectarse a la Database SQL

include('conec.php'); 
Generador Aleatorio

Código PHP:
// Generar Aleatoriamente un Usuario

$Usuario "abcdefghjkmnpqrstuvwxyz123456789";
$UsuarioAleatorio str_shuffle($Usuario);
$UsuarioAleatorio substr($UsuarioAleatorio,0,12);
$UserAcc $UsuarioAleatorio;

[
B]// Generar Aleatoriamente una Contraseña[/B]

$Contraseña "abcdefghjkmnpqrstuvwxyz123456789";
$ContraseñaAleatoria str_shuffle($Contraseña);
$ContraseñaAleatoria substr($ContraseñaAleatoria,0,12);
$PasswordAcc $ContraseñaAleatoria
El buscado de Valores Existentes

Código PHP:
////////// Buscar si el Valor Existe en la Base de Datos SQL //////////

// Usuario

$User $UserAcc;
$wea mssql_query("SELECT UserAcc FROM ActivesAcc where UserAcc ='$User'");
$row mssql_fetch_row($wea);
if (
$row[0] != "")
echo  
"El Usuario Existe"
else
echo  
"No existe";

// Contraseña

$Cont $PasswordAcc;
$wea2 mssql_query("SELECT PasswordAcc FROM ActivesAcc where PasswordAcc ='$Cont'");
$row2 mssql_fetch_row($wea2);
if (
$row2[0] != "")
echo  
"El Usuario Existe"
else
echo  
"No existe"
Y por Ultimo, la Escritura en la Base de Dátos

Código PHP:
// Gudardar Variables en SQL

mssql_query("INSERT INTO ActivesAcc VALUES ('$Fname', '$Lname', '$Mail', '$Genere', '$Host', '$UserAcc', '$PasswordAcc', '$Port', '$IPOwner', '$Pay', '$Method', '$TimeCreate')");

// End 

El Grán Problema que tengo, es que no puedo hacer que cuando el Código que se Generó Aleatoriamente, sea verificado y de que de estar repetido, que vuelva a generar otro Código y Comprobar Nuevamente (como una especie de bucle), así en un proceso quisas infinito o hasta que de el OK de que no existe en la base de dátos.

Una ves que termine con el Usuario, Siga la Contraseña y luego Almacene todas las Variables.

El tema es que me imaginé como seria esto con IF, y no me da la cabeza.
¿Alguien tiene Alguna Idea como volver atrás en un código? ¿Como seria? o algo?

Gracias desde Ya.
  #2 (permalink)  
Antiguo 24/07/2010, 13:58
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 3 meses
Puntos: 126
Respuesta: Como Ordenar el Código

Hola

Prueba a meter el Generador Aleatorio en una función. Si existe el nombre o contraseña vuelves a llamarla

Cita:
$User = generar_login('usu');
.....
if ($row[0] != "")
generar_login('usu');

$Cont = generar_login('psw');
Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 24/07/2010, 14:04
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Respuesta: Como Ordenar el Código

Tiene Bastante Sentido. No lo pensé.
Gracias, lo pruebo y te digo.
  #4 (permalink)  
Antiguo 24/07/2010, 14:45
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Respuesta: Como Ordenar el Código

Me tira error en la primer linea donde comienza la función. (Parse error: parse error in). Nose si es de mala sintaxis o que estoy haciendo mal.

Código PHP:
// Generar Aleatoriamente un Usuario
// Funcion ON
generar_login('usu'){
$Usuario "abcdefghjkmnpqrstuvwxyz123456789";
$UsuarioAleatorio str_shuffle($Usuario);
$UsuarioAleatorio substr($UsuarioAleatorio,0,12);
$UserAcc $UsuarioAleatorio;
// Función OFF
}

// Generar Aleatoriamente una Contraseña
// Funcion ON
generar_login('cont'){ 
$Contraseña "abcdefghjkmnpqrstuvwxyz123456789";
$ContraseñaAleatoria str_shuffle($Contraseña);
$ContraseñaAleatoria substr($ContraseñaAleatoria,0,12);
$PasswordAcc $ContraseñaAleatoria;
// Funcion OFF
}

////////// Buscar si el Valor Existe en la Base de Datos SQL //////////

// Usuario
$User $UserAcc;
$wea mssql_query("SELECT UserAcc FROM ActivesAcc where UserAcc ='$User'");
$row mssql_fetch_row($wea);
if (
$row[0] != "")
generar_login('usu');
else
echo  
"No existe";

// Contraseña
$Cont $PasswordAcc;
$wea2 mssql_query("SELECT PasswordAcc FROM ActivesAcc where PasswordAcc ='$Cont'");
$row2 mssql_fetch_row($wea2);
if (
$row2[0] != "")
generar_login('cont'); 
else
echo  
"No existe";

// Guardar Variables en SQL

mssql_query("INSERT INTO ActivesAcc VALUES ('$Fname', '$Lname', '$Mail', '$Genere', '$Host', '$UserAcc', '$PasswordAcc', '$Port', '$IPOwner', '$Pay', '$Method', '$TimeCreate')"); 
  #5 (permalink)  
Antiguo 24/07/2010, 14:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como Ordenar el Código

una función requiere del operador function, si no no hace nada...

Código PHP:
function algo()
{
  
// ...

además cometes muchas mas atrocidades contra la sintaxis....

¿porque no te pones a leer primero??
http://mx2.php.net/functions
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 24/07/2010, 15:02
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Respuesta: Como Ordenar el Código

Gracias. Voy a leerlo Pruebo y te digo
  #7 (permalink)  
Antiguo 25/07/2010, 10:43
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Respuesta: Como Ordenar el Código

Hola, te cuento, estuve leyendo bastante sobre Funciones, y lo errores de Sintaxis que tenia.
Ya tengo el código funcionando, aunque hay un problema.

1ro. No se si al presentarse un Código Aleatorio Repetido, el Php, generará Otro (nose si funciona)

2do. No entiendo porque me muestra los Resultados, pero de la creación anterior, y no de esta.

Les dejo el código aver si me pueden dar una mano y debajo una duda que tengo sobre sintaxis:

Código PHP:
// Generar Aleatoriamente un Usuario

function Aleatory_Code_User(){
$Usuario "abcdefghjkmnpqrstuvwxyz123456789";
$UsuarioAleatorio str_shuffle($Usuario);
$UsuarioAleatorio substr($UsuarioAleatorio,0,12);
return 
$UsuarioAleatorio;
}

// Usuario
function Validate_Aleatory_Code_User(){
$UsAlea Aleatory_Code_User();
$wea mssql_query("SELECT UserAcc FROM ActivesAcc where UserAcc ='$UsAlea'");
$row mssql_fetch_row($wea);
if (
$row[0] != ""){
Aleatory_Code_User();
}else{
return 
$UsAlea;
} }

// Generar Aleatoriamente una Contraseña

function Aleatory_Code_Password (){
$Contrase&#241;a = "abcdefghjkmnpqrstuvwxyz123456789";
$Contrase&#241;aAleatoria = str_shuffle($Contraseña);
$Contrase&#241;aAleatoria = substr($ContraseñaAleatoria,0,12);
return $Contrase&#241;aAleatoria;
}

// Contraseña
function Validate_Aleatory_Code_Password (){
$ConAlea Aleatory_Code_Password ();
$wea2 mssql_query("SELECT PasswordAcc FROM ActivesAcc where PasswordAcc ='$ConAlea'");
$row2 mssql_fetch_row($wea2);
if (
$row2[0] != ""){
Aleatory_Code_Password();
}else{
return 
$ConAlea;
} }

// Guardar Variables en SQL

$UserAcc Validate_Aleatory_Code_User();
$PasswordAcc Validate_Aleatory_Code_Password ();

mssql_query("INSERT INTO ActivesFTP VALUES ('$Fname', '$Lname', '$Mail', '$Genere', '$Host', '$UserAcc', '$PasswordAcc', '$Port', '$IPOwner', '$Pay', '$Method', '$TimeCreate')");

// Mostrar Dátos en la Pantalla
    
    
echo $Fname."<br>";
    echo 
$Lname."<br>";
    echo 
$Mail."<br>";
    echo 
$Genere."<br>";
    echo 
$Host."<br>";
    echo 
$UserAcc."<br>";
    echo 
$PasswordAcc."<br>";
    echo 
$Port."<br>";
    echo 
$IPOwner."<br>";
    echo 
$Pay."<br>";
    echo 
$Method."<br>";
    echo 
$TimeCreate."<br>";
    
// End 





Mi duda sobre sintaxis es... al Pasar Valores de una Función a Otra, cual de las Tres Formas Está bien escrita:


Código PHP:
function DefinicionValor () {
$a '1';
return 
$a;
}

function 
OtraFunction () {
DefinicionValor();
echo 
$a.' si aparece un uno es porque el valor paso';

O esta Otra:

Código PHP:
function DefinicionValor () {
$a '1';
return 
$a;
}

function 
OtraFunction () {
DefinicionValor($a);
echo 
$a.' si aparece un uno es porque el valor paso';

O en el Principio de la nueva Función:

Código PHP:
function DefinicionValor () {
$a '1';
return 
$a;
}

function 
OtraFunction ($a) {
echo 
$a.' si aparece un uno es porque el valor paso';


Mil Gracias desde ya, este es uno de los pocos foros que de verdad ayudan.
  #8 (permalink)  
Antiguo 25/07/2010, 15:56
 
Fecha de Ingreso: abril-2010
Ubicación: Ping: BSAS - Arg
Mensajes: 791
Antigüedad: 14 años
Puntos: 25
Respuesta: Como Ordenar el Código

Ya lo Resolví, gracias por la Ayuda :D


Código PHP:
<?php

// Conectarse a la Database SQL

include('conec.php');

// Tomar las Variables desde URL

    
$Fname "Test";
    
$Lname "TestApellido";
    
$Mail "[email protected]";
    
$Genere "H";
    
$Host "testehost.com.ar";
    
$Port "3432";
    
$IPOwner "200.192.43.125";
    
$Pay "0";
    
$Method "None";
    
$TimeCreate "21-July-2010";



// Generar Aleatoriamente un Código

function Gen_Cod_Aleatorio()
{
$Usuario "abcdefghjkmnpqrstuvwxyz123456789";
$Aleatorio str_shuffle($Usuario);
$Aleatorio substr($Aleatorio,0,12);
return 
$Aleatorio;
}

$Aleatorio Gen_Cod_Aleatorio();
Gen_Cod_Aleatorio_Verify_User($Aleatorio);

function 
Gen_Cod_Aleatorio_Verify_User($AleaUs){
$wea mssql_query("SELECT UserAcc FROM ActivesAcc where UserAcc ='$AleaUs'");
$row mssql_fetch_row($wea);
if (
$row[0] != ""){ 
Gen_Cod_Aleatorio_Verify_User($Aleatorio);
} else { 
return 
$AleaUs;
}}

$Aleatorio2 Gen_Cod_Aleatorio();
Gen_Cod_Aleatorio_Verify_Pass($Aleatorio2);

function 
Gen_Cod_Aleatorio_Verify_Pass($AleaPass){
$wea mssql_query("SELECT PasswordAcc FROM ActivesAcc where PasswordAcc ='$AleaPass'");
$row mssql_fetch_row($wea);
if (
$row[0] != ""){ 
Gen_Cod_Aleatorio_Verify_Pass($Aleatorio2);
} else { 
return 
$AleaPass;
}}


// Muestra de lo que se Genera y que las Variables son Enviadas.
// $Us = Gen_Cod_Aleatorio_Verify_User($Aleatorio);
// $Ps = Gen_Cod_Aleatorio_Verify_Pass($Aleatorio2);
// echo $Us.'     '.$Ps.'   Esto fue Generado al Azar.';

$UserAcc Gen_Cod_Aleatorio_Verify_User($Aleatorio);
$PasswordAcc Gen_Cod_Aleatorio_Verify_Pass($Aleatorio2);

mssql_query("INSERT INTO ActivesAcc VALUES ('$Fname', '$Lname', '$Mail', '$Genere', '$Host', '$UserAcc', '$PasswordAcc', '$Port', '$IPOwner', '$Pay', '$Method', '$TimeCreate')");


// Mostrar Dátos en la Pantalla
    
    
echo $Fname."<br>";
    echo 
$Lname."<br>";
    echo 
$Mail."<br>";
    echo 
$Genere."<br>";
    echo 
$Host."<br>";
    echo 
$UserAcc."<br>";
    echo 
$PasswordAcc."<br>";
    echo 
$Port."<br>";
    echo 
$IPOwner."<br>";
    echo 
$Pay."<br>";
    echo 
$Method."<br>";
    echo 
$TimeCreate."<br>";
    
// End

?>

Etiquetas: Ninguno
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 07:06.