Foros del Web » Programando para Internet » PHP »

Sacar dato de array dentro de ciclo

Estas en el tema de Sacar dato de array dentro de ciclo en el foro de PHP en Foros del Web. Hola amigos , soy nuevo en el foro y en php, bueno les comento, estoi haciendo un formulario de contacto, y el txt que almacenara ...
  #1 (permalink)  
Antiguo 09/04/2012, 18:37
 
Fecha de Ingreso: abril-2012
Mensajes: 6
Antigüedad: 12 años, 7 meses
Puntos: 0
Sacar dato de array dentro de ciclo

Hola amigos , soy nuevo en el foro y en php, bueno les comento, estoi haciendo un formulario de contacto, y el txt que almacenara los comentarios, tengo que encriptarlo usando el metodo de encriptacion cesar, y ese valor encriptado, se enviara a una direccion de correo. Bueno ya recibo el comentario y lo encripto, ahora lo que no puedo hacer es, sacar el texto encriptado para poder mandarlo, ya que lo que tengo es que imprimo lso caracteres conforme se van encriptando. Les muestro:

Cita:

if(isset($_POST['coment']))
{


// declaramos el abecedario como un arreglo 2 veces.

$abecedario = array("A","B","C","D","E","F","G","H","I","J","K", "L","M","N","Ñ","O","P","Q","R","S","T","U","V","W ","X","Y","Z","A","B","C","D","E","F","G","H","I", "J","K","L","M","N","Ñ","O","P","Q","R","S","T","U ","V","W","X","Y","Z");

// strtoupper() convierte la cadena en mayusculas

$cadena = (strtoupper($_POST['coment']));

//la funcion str_replace() elimina los espacios " "

$cadena = str_replace(" ","",$cadena);

//la funcion strlen() devuelve el tamaño de la cadena

$len = strlen($cadena);

//la funcion str_split() convierte una cadena en un arreglo,

$arr = str_split($cadena);

// Ahora preguntamos si la opcion enviada es 'Encriptar' o 'Desencriptar'

if($_POST['op']=='Enviar')
{
echo "<h3>La cadena encriptada es: ";

for($c=0;$c<$len;$c++)// con este se recorre el arreglo
{
for($c2=0;$c2<27;$c2++)//compara el caracter en el que este el primer for y obtener posicion
{
if(strcasecmp($abecedario[$c2],$arr[$c])==0) //Si El caracter de la cadena es igual al caractere del abecedario
{
echo $abecedario[$c2+4]; //Se imprimen los caracteres a medida que se obtienen
// quiero aqui almacenar esos caracteres para posteriormente enviarlos por correo.


}



}//segundo for
}//primer for

echo "</h3>";

}//llave de if


}

echo "</center>";
  #2 (permalink)  
Antiguo 09/04/2012, 19:06
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Sacar dato de array dentro de ciclo

o.O no se te ocurrio concatenar la variable...

Código PHP:
Ver original
  1. $textoEncriptado = '';
  2. //Tooodooo tu código...
  3. if(strcasecmp($abecedario[$c2],$arr[$c])==0) //Si El caracter de la cadena es igual al caractere del abecedario
  4. {
  5. echo $abecedario[$c2+4]; //Se imprimen los caracteres a medida que se obtienen
  6. $textoEncriptado .= $abecedario[$c2+4];
  7. }
  8.  
  9. echo $textEncriptado;
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #3 (permalink)  
Antiguo 09/04/2012, 19:37
 
Fecha de Ingreso: abril-2012
Mensajes: 6
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: Sacar dato de array dentro de ciclo

Hola amigo gracias por tu respuesta, y bueno si intente concatenar, pero solo me devolvia el ultimo caracter nada mas y no todo el texto a cifrar :s.
Probe lo que me dices y al correr me tira el siguiente error :

Undefined variable: textEncriptado

.La verdad soy nuevo en php, y quiero aprender, lei lo que me has dicho, pero aun no logro entender.

Gracias por su atencion


Edito, la variable auxiliar textEncriptado si la tengo declarada.

Última edición por boiiser; 09/04/2012 a las 19:43
  #4 (permalink)  
Antiguo 09/04/2012, 19:47
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Sacar dato de array dentro de ciclo

Ve bien el ejemplo que te deje, antes de entrar al primer for debes iniciar la variable $textoEncriptado como vacia $textoEncriptado = ""; y luego ya definir los loos (for)

Nota: no había visto tu "edito", muestra tu código...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Última edición por Nemutagk; 09/04/2012 a las 19:56

Etiquetas: dato, formulario, ciclos
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 14:06.