Foros del Web » Programando para Internet » PHP »

Ayuda con programa php

Estas en el tema de Ayuda con programa php en el foro de PHP en Foros del Web. Hola nuevamente vengo a pedirles ayuda. Necesito crear un programa con el cual yo entro 4 numero y me devuelve un resultado A ver si ...
  #1 (permalink)  
Antiguo 29/04/2010, 09:45
 
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 16 años, 2 meses
Puntos: 0
Ayuda con programa php

Hola nuevamente vengo a pedirles ayuda.

Necesito crear un programa con el cual yo entro 4 numero y me devuelve un resultado

A ver si me explico tengo un .txt con datos los cuales estan acomodados de este modo:

Cita:
1000 Item 1
1001 Item 2
1002 Item 3

etc
Lo que quiero hacer es que si al ingresar 1000 me de el resultado "item 1" o al ingresar 1002 me diga "item 3" se entiende?

Siempre son 4 numeros y le sigue el item y pasa a la siguiente linea, esto no cambia nunca.

Realmente no se ni como empezar a realizarlo :S

Lo que si hay que respetar la manera en la cual estan acomodados los items ya que es un stock de productos y ya esta hecho de ese modo y son muchisimos como para generar otra lista de otro modo.

Espero que me puedan dar una mano.Muchas gracias
  #2 (permalink)  
Antiguo 30/04/2010, 10:46
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años, 7 meses
Puntos: 40
Respuesta: Ayuda con programa php

Para empezar a hacer ese programa primero tendrás que leer el archivo, por lógica para que compares los 4 números que tu metes con TODOS los del archivo, hay que ir leyendo el archivo linea por linea, por lo tanto un bucle, yo lo veo algo así:

Código PHP:
$file fopen("archivo.txt""r");
if (
$file) {
    while (!
feof($file)) {
        
$buffer fgets($handle1024);
        
$number substr($buffer04);
        if(
$_GET['numeroQUEintroducesTU]' == $number){
            echo 
$buffer//Esto mostrara en pantalla la linea completa del archivo
            
break; //Una vez encontrado no hace falta que siga leyendo lineas
        
}
    }
fclose($file

No he comprobado el código ni nada, pero espero que te sirva de algo.

P.D: Te pongo la referencia de las funciones que usé por si necesitas modificaciones:

fgets - http://es2.php.net/manual/en/function.fgets.php
substr - http://es2.php.net/manual/en/function.substr.php
feof - http://es2.php.net/manual/en/function.feof.php

Un saludo

Última edición por Heli0s; 30/04/2010 a las 10:55
  #3 (permalink)  
Antiguo 30/04/2010, 10:55
 
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Ayuda con programa php

helios muuuuuchisimas gracias voy a ver si lo saco, si lo logro lo posteo :D

EDIT:

tengo este error ahora
Warning: fgets(): supplied argument is not a valid stream resource in /home/doomis/public_html/index2.php on line 5
Código PHP:
<?php
$file 
fopen("1.txt""r");
if (
$file) {
    while (!
feof($file)) {
        
$buffer fgets($handle1024);
        
$number substr($buffer04);
        if(
$_GET['0024'] == $number){
            echo 
$buffer//Esto mostrara en pantalla la linea completa del archivo
            
break; //Una vez encontrado no hace falta que siga leyendo lineas
        
}
    }
}
fclose($file)  
?>
:S

Última edición por doom12344; 30/04/2010 a las 12:58
  #4 (permalink)  
Antiguo 30/04/2010, 12:12
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años, 7 meses
Puntos: 40
Respuesta: Ayuda con programa php

He visto mi código y tiene un error, en la linea que pone:

$buffer = fgets($handle, 1024);

sustituyela por

$buffer = fgets($file, 1024);
  #5 (permalink)  
Antiguo 30/04/2010, 13:03
 
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Ayuda con programa php

Gracias por responder Heli0s ya no tira error pero no muestra ningún resultado aunque haya un numero que este en el .txt
  #6 (permalink)  
Antiguo 30/04/2010, 13:15
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años, 7 meses
Puntos: 40
Respuesta: Ayuda con programa php

creo que edtas usando mal la variable get, el numero no tienes que ponerlo entre los corchetes, es algo asi, $_GET['number'], y en la url de la pag www.pagina.com?number=xxxx

Un saludo
  #7 (permalink)  
Antiguo 30/04/2010, 13:29
 
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Ayuda con programa php

Heli0s ya funciono :D como lo hiciste vos me sirvió para hacerlo como yo quería

Y así quedo
Código PHP:

<?php
$file 
fopen("1.txt""r");
if (
$file) {
    while (!
feof($file)) {
        
$buffer fgets($file5024);
        
$number substr($buffer04);
        if(
$number == 2014){
            echo 
$buffer//Esto mostrara en pantalla la linea completa del archivo
            
break; //Una vez encontrado no hace falta que siga leyendo lineas
        
}
             }
    }
fclose($file)  

?>
Entonces cuando encuentra el codigo 2014 muestra esa linea :)

  #8 (permalink)  
Antiguo 30/04/2010, 13:38
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 14 años, 7 meses
Puntos: 40
Respuesta: Ayuda con programa php

Claro, yo te lo decia para que el numero fuese variable, no fijo.

Un saludo
  #9 (permalink)  
Antiguo 30/04/2010, 14:03
 
Fecha de Ingreso: agosto-2008
Mensajes: 27
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Ayuda con programa php

Cita:
Iniciado por Heli0s Ver Mensaje
Claro, yo te lo decia para que el numero fuese variable, no fijo.

Un saludo
Es que en realidad no lo es solo que era mas fácil de explicarlo de ese modo pero en realidad quedaría así

Código PHP:
if($number == $mivariable 
Etc etc.
entonces chequearía el numero con mi variable la cual introduciría el usuario y se la asignaría a $mivariable


Muchas gracias por toda tu ayuda

Etiquetas: programa
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 21:45.