elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ayuda... lectura de string y meterlo en un array
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: ayuda... lectura de string y meterlo en un array  (Leído 5,793 veces)
satan69


Desconectado Desconectado

Mensajes: 341



Ver Perfil
ayuda... lectura de string y meterlo en un array
« en: 3 Agosto 2009, 19:17 pm »

hola muchachos... queria saber como puedo lograr leeer una string asi..


hola,dedo,mano,monitor,chele,blanco

lo que quiero es obtener las palabras en un array algo asi

$palabra[0] = "hola";
$palabra[1] = "dedo";
$palabra[2] = "mano";
$palabra[3] = "monitor";
$palabra[4] = "chele";
$palabra[5] = "blanco";

seria algo asi... como lo podria hacer..?


En línea

SnakeDrak

Desconectado Desconectado

Mensajes: 243


[GPG: 0x9680A09E]


Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #1 en: 3 Agosto 2009, 21:58 pm »

Hola,

Pues con explode:

Código
  1. $cadena = "hola,dedo,mano,monitor,chele,blanco";
  2. $dividido = explode(",",$cadena);
  3. for($i=0;$i<sizeof($cadena);$i++)
  4.   echo $dividido[$i]."<br/>";
  5.  

Quedaría:
Citar
hola
dedo
mano
monitor
chele
blanco

Saludos!


En línea

Erika Vega

Desconectado Desconectado

Mensajes: 96



Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #2 en: 3 Agosto 2009, 23:25 pm »

Quizas esto te de una idea:

http://www.newbiemania.org/tutoriales-php-15-Separar%20strings%20con%20PHP.html
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #3 en: 4 Agosto 2009, 00:30 am »

Como dijo SnakeDark básicamente seria esto para separar el string:

Código
  1. <?php
  2. $mi_cadena = "hola,dedo,mano,monitor,chele,blanco";
  3. $mi_array = explode(',', $mi_cadena);
  4. ?>

Y otra forma de recorrerlo usando la función foreach de PHP:

Código
  1. <?php
  2. $mi_cadena = "hola,dedo,mano,monitor,chele,blanco";
  3. $mi_array = explode(',', $mi_cadena);
  4. foreach($mi_array as $indice => $valor)
  5. {
  6. echo "$indice : $valor<br />";
  7. }
  8. ?>

Y otra útil para debuggear:
Código
  1. print_r($mi_array);

Que mostraría algo asi:

Código
  1. Array ( [0] => hola [1] => dedo [2] => mano [3] => monitor [4] => chele [5] => blanco )

Salu10
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
satan69


Desconectado Desconectado

Mensajes: 341



Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #4 en: 4 Agosto 2009, 01:26 am »

me ha funcionado lo que me han dicho.. pero sigo teniendo problemas con el script que quiero hacer... aqui le pongo una muestra:
HAGO ESTO:
Con el $xD le meto los id.

$numx =  1;
$xD $xD;
setcookie("id"$xD);
setcookie("num"$numx);

despues voy metiendo mas id en la cookie

$numx $_COOKIE["num"] + 1;
$xD $_COOKIE["id"].",".$xD;
setcookie("id"$xD);
setcookie("num"$numx);

ya despues al mismo tiempo que actualizo la cookie la leeeeeo

$cadena $_COOKIE['id'];
$dividido explode(",",$cadena);
for(
$i=0;$i<$num;$i++)
{
$divi $dividido[$i];
$edit mysql_query("SELECT * from char WHERE id = '".$divi."'")or die(mysql_error());
//y el resto ya lo saben... jejeje
}

mi problema radica q... usando ajax.. no se me actualiza la lista de nombres sino a la hora de recargar...

Hay alguna forma para lograrlo..?
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #5 en: 4 Agosto 2009, 02:15 am »

Código
  1. $cadena = $_COOKIE['id'];
  2. $dividido = explode(",",$cadena);
  3. for($i=0;$i<$num;$i++)
  4. {
  5. $divi = $dividido[$i];
  6. $edit = mysql_query("SELECT * from char WHERE id = '".$divi."'")or die(mysql_error());
  7. //y el resto ya lo saben... jejeje
  8. }
  9.  

De donde sacas $num:silbar:
Creo que deberia ser $numx, no? Y no te recomiendo usar 'char' como el nombre de na tabla ya que es una palabra reservada del lenguaje SQL.

Por eso recomiendo usar foreach. Mas alla de como implementes AJAX:

Código
  1. $dividido = explode(",",$_COOKIE['id']);
  2. foreach($dividido as $valor)
  3. {
  4.   $edit = mysql_query("SELECT * from USA_OTRO_NOMBRE_D_TABLA WHERE id = '$valor'")or die(mysql_error());
  5.  //Acostumbremos a sangrar el código ;)
  6. }

como veras eh quitado $cadena porque no tiene ninguna utilidad, asigna con un explode a $_COOKIE directo (si no vas a parsear dicha variable).
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
SnakeDrak

Desconectado Desconectado

Mensajes: 243


[GPG: 0x9680A09E]


Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #6 en: 4 Agosto 2009, 02:33 am »

Hola,

Yo siempre uso en las consultas SQL las comillas ``, así puedes llamarle FROM si quieres a un campo y no te dará problemas.

Código
  1. SELECT `FROM` FROM `una_tabla` WHERE `un_campo` = 'un_valor';
  2.  

Saludos!
En línea

[u]nsigned


Desconectado Desconectado

Mensajes: 2.397

JS/Node developer


Ver Perfil WWW
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #7 en: 4 Agosto 2009, 03:01 am »

Hola,

Yo siempre uso en las consultas SQL las comillas ``, así puedes llamarle FROM si quieres a un campo y no te dará problemas.

Código
  1. SELECT `FROM` FROM `una_tabla` WHERE `un_campo` = 'un_valor';
  2.  

Saludos!

Habiendo TANTAS otras palabras justo así le tienen que poner a un campo/tabla?  :xD

Saludos  :)
En línea

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!
SnakeDrak

Desconectado Desconectado

Mensajes: 243


[GPG: 0x9680A09E]


Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #8 en: 4 Agosto 2009, 03:05 am »

Hola,

 :xD bueno de esa manera evitan ese tipo de errores, no sé a mi me gusta ponerle los ``, me siento más seguro  :xD y me es más bonito  :P

Además campos como from son palabras muy utilizadas xD o char para personajes.. etc.

Pero vamos, solo era por qe lo supiese, de todas formas cada cual programa como más le gusta, mientras funcione y esté bien optimizado pues perfect!

Saludos!!
En línea

satan69


Desconectado Desconectado

Mensajes: 341



Ver Perfil
Re: ayuda... lectura de string y meterlo en un array
« Respuesta #9 en: 4 Agosto 2009, 08:06 am »

Código
  1. $cadena = $_COOKIE['id'];
  2. $dividido = explode(",",$cadena);
  3. for($i=0;$i<$num;$i++)
  4. {
  5. $divi = $dividido[$i];
  6. $edit = mysql_query("SELECT * from char WHERE id = '".$divi."'")or die(mysql_error());
  7. //y el resto ya lo saben... jejeje
  8. }
  9.  

De donde sacas $num:silbar:
Creo que deberia ser $numx, no? Y no te recomiendo usar 'char' como el nombre de na tabla ya que es una palabra reservada del lenguaje SQL.

Por eso recomiendo usar foreach. Mas alla de como implementes AJAX:

Código
  1. $dividido = explode(",",$_COOKIE['id']);
  2. foreach($dividido as $valor)
  3. {
  4.   $edit = mysql_query("SELECT * from USA_OTRO_NOMBRE_D_TABLA WHERE id = '$valor'")or die(mysql_error());
  5.  //Acostumbremos a sangrar el código ;)
  6. }

como veras eh quitado $cadena porque no tiene ninguna utilidad, asigna con un explode a $_COOKIE directo (si no vas a parsear dicha variable).

le puse char.. es decir, por poner cualquier nombre... fijense que el codigo me funciona bien.. pero las cookie se actualizan solo cuando refresco la pagina..? alguna otra sugerencia
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines