Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/05/2012, 08:51
Avatar de NnikoO
NnikoO
 
Fecha de Ingreso: agosto-2008
Ubicación: Rosario
Mensajes: 245
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Problema catalogo + foreach + jqueeery!

Hola gente, estoy con una gran duda. En pocas palabras y concisamente:
Hice un catalogo de productos, donde hay una opcion de generar una lista de estos para enviar por mail y ser presupuestados.
Esto anda perfecto, las listas se guardan en .txt independientes segun la sesion del usuario y luego se envian por mail.
Antes de enviar aparece la lista de manera vertical, con la opcion de borrar productos de a uno por si hubo algun error en la eleccion.

El problema, es que solo permite borrar el que este situado arriba de todos, y asi sucesivamente a medida que se vayan borrando. No le puedo encontrar la vuelta! La onda es que se pueda borrar el que se quiera, sea cual sea su posicion en la lista!
Dejo los codigos para que puedan ayudarme.

Seccion donde se muestra la lista antes de ser enviada con la opcion de borrarlos:
Código PHP:
<script type="text/javascript">
$(document).ready(function() {
  $('#borrarlistado').click(function() {
         $.ajax({
              type:'GET',
              url:'script/borratxt.php',
              data:'producto=' + $('#nombreproducto').val(),
              cache:false,
              success: function(recarga) {
                   $("#recargaprod").html(recarga);
              }    
         });
  });
});
</script>

<div id="recargaprod">
                        <?php 
                        
                        
if($listado != ''){
                            list(
$ip1$ip2$ip3$ip4) = explode("."$_SESSION["user"]);
                            
$ip $ip1.$ip2.$ip3.$ip4;
                            
                            
$dir "txt/";
                            
$extension ".txt";
                            
$archivo $ip.$extension;
                            
$locacion $dir.$archivo;
                            
                                
$filas file($locacion);  
                                
                                echo 
"<label>Listado de productos:</label> <br /><br />";
                                
                                
                                foreach(
$filas as $v){
                                    
$datos explode("[\t\n\r; ]+",$v);
                                    foreach(
$datos as $dato){
                                        
                                        echo 
"<div class='listadoproductos'><a id='borrarlistado'><img src='images/borrar.gif' width='10' height='10' border='0'/></a> ".$dato."<input type='hidden' value='".$dato."' id='nombreproducto'/></div>";
                                    }
                                }
                                
                        }
                                
                        
?>
                        </div>
Y este es el codigo que se encarga de borrar el respectivo producto cargado en el .txt:

Código PHP:
<?php
include("../control.php");

$nombreproducto $_GET['producto'];

list(
$ip1$ip2$ip3$ip4) = explode("."$_SESSION["user"]);
$ip $ip1.$ip2.$ip3.$ip4;

$dir "../txt/";
$extension ".txt";

$archivo $ip.$extension;
$locacion $dir.$archivo;


$texto '';
$cadena_a_borrar $nombreproducto;
$nombre_archivo $locacion;
$lineas file($nombre_archivo);
 foreach (
$lineas as $linea) {
    if (!
strstr($linea$cadena_a_borrar)) {
        
$texto .= $linea;
    }
}
 
$f fopen($nombre_archivo'w');
fwrite($f$texto);
fclose($f);
?> 

<head>
<script type="text/javascript">
$(document).ready(function() {
  $('#borrarlistado').click(function() {
         $.ajax({
              type:'GET',
              url:'script/borratxt.php',
              data:'producto=' + $('#nombreproducto').val(),
              cache:false,
              success: function(recarga) {
                   $("#recargaprod").html(recarga);
              }    
         });
  });
});
</script>
</head>

<label>Listado de productos:</label> <br /><br />
<?php 
    $filas 
file($locacion);  
    foreach(
$filas as $v){
    
$datos explode("[\t\n\r; ]+",$v);
    foreach(
$datos as $dato){
        echo 
"<div class='listadoproductos'><a id='borrarlistado'><img src='images/borrar.gif' width='10' height='10' border='0'/></a> ".$dato."<input type='hidden' value='".$dato."' id='nombreproducto'/></div>";
                                    }
                                }
?>
Espero q puedan ayudarme porque es lo ultimo que me falta, y me esta trabando demasiado, acercandose ya la fecha de entrega del trabajo final.
Muchas gracias de antemano!

Un abrazo.

<< niko >>