Re: [PHP-ES] mysql_fetch_array + insertar valores con checkbox en otra tabla

[email protected] (Luis Vega) Wed, 28 May 2014 11:52:24 -0400
Newsgroups php.general.es
Message-ID <CAKPF32Cp5MTTJM7O0ANT025dsjyw8BUggYHAwhN7f1VfU-wsPA@mail.gmail.com>
--047d7bd758609846f504fa77cd1b
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

Alexis,

Que tal si en la p=C3=A1gina donde muestras $_POST['valor'] imprimes el arr=
ay y
verificas si realmente viene como array y los datos que contiene.

Hazo as=C3=AD:

print("<pre>");
print_r($_POST['valor']);

Nos cuentas



El 28 de mayo de 2014, 11:31, Juan Manuel Acu=C3=B1a Barrera
<[email protected]>escribi=C3=B3:

> Hola.
>
> No se si he entendido bien tu problema, me parece que es algo as=C3=AD:
>
> 1.- Obtienes un array de una base de datos, supongamos para el ejemplo qu=
e
> obtienes 10 items.
> 2.- La muestras en pantalla, con checkboxes incluidos.
> 3.- Quieres seleccionar, por ejemplo, el 3, el 5 y el 9.
> 4.- La p=C3=A1gina te retorna como si solo hubieras seleccionado el 3 (o =
el 9?)
>
> Si ese es el problema, me parece que la soluci=C3=B3n pasar=C3=ADa por do=
s cosas:
>
> a.- Debes hacer cada checkbox =C3=BAnico, pon un contador con ++ y el che=
ckbox
> as=C3=B3cialo con una cadena mas el contador, por ejemplo:
> check_0
> check_1
> check_2 ...
>
> b.- En la p=C3=A1gina donde est=C3=A1s recibiendo la informaci=C3=B3n, re=
corre el mismo
> array del punto 1, y haz un $_POST por cada uno de los checkboxes.
> Adicionalmente puedes almacenar esta informaci=C3=B3n en un nuevo array p=
ara
> mejor manejo.
>
> Espero que me haya explicado bien.
>
> Saludos!
>
>
> El 27/05/2014, a las 22:11, Alexis Saucedo <[email protected]>
> escribi=C3=B3:
>
> > Gente buenas noches, la verdad que ya intente de toda formas que el
> > resultado de mysql me lo arroje con checkbox para poder marcar y poder
> > insertar esos datos en otra base que ya no se que hacer. Necesito que
> > cuando me traiga todos los datos de la base venga con un checkbox y pue=
da
> > se=C3=B1alar cual quiero insertar en otra base de datos por ejemplo si =
me trae
> > azul, rojo y verde cuando marque azul y rojo solo me muestre esos datos
> > para poder insertar en otra tabla.  Tengo una funcion que recoje los
> datos
> > de la base, foto, descripcion, detalle:
> >
> > if ($_GET[buscar]=3D=3D"articles")
> > {
> > $dbhost=3D"localhost";
> > $dbname=3D"";
> > $dbuser=3D"";
> > $dbpass=3D"";
> > $db =3D mysql_connect($dbhost,$dbuser,$dbpass);
> > $consulta=3D"SELECT * FROM article WHERE
> > product_code=3D'".mysql_real_escape_string(intval($_GET[product_code]))=
."'
> > order by article";
> > mysql_select_db($dbname);
> > $todos=3Dmysql_query($consulta);
> > // Comienzo a imprimir el select
> >        echo "<div style=3D\"width: 100%; height: 400px; align: center;
> > overflow-y:auto ;\">";
> >        echo "<table border=3D\"0px\" width=3D\"100%\" cellpadding=3D\"1=
0\">";
> > //<---- reveer las medidas
> > while($registro=3Dmysql_fetch_array($todos))
> > {
> > // Convierto los caracteres conflictivos a sus entidades HTML
> > correspondientes para su correcta visualizacion
> > // Imprimo las opciones del select
> >                echo "<tr><td><a href=3D\"#\"
> > onClick=3D\"afoto('images/nodisponible.png','desc');return
> > false\"><td>"."<img src=3D\"images/$registro[art_image]\" border=3D\"0\=
"
> > height=3D\"60\" width=3D\"80\" />"."</td>";
> > echo "<td heigth=3D100>".utf8_encode($registro["article"])."</td>";
> >                echo
> > "<td>".utf8_encode($registro["art_description"])."</td>";
> >
> >                if($registro[stock]>10){
> >
> >                echo "<td>"."Disponible"."</td>";
> >                echo "<td><input name=3D\"valor[art_name]\"
> type=3D\"checkbox\"
> > value=3D\"$registro[article]\">$registro[article]</input><br/></td></tr=
>";
> >
> >                }else{
> >                echo "<td>"."Agotado Consultar"."</td>";}
> >
> > }
> >        echo "<td></td></table>";
> >        echo "</div>";
> >
> > }
> >
> > y lo muestra js en la otra pagina, ahora cuando quiero llamar solo a es=
a
> > parte desde la otra pagina de esta forma:
> >
> > <?php
> >    if(isset($_POST['Submit'])) {
> >    foreach($_POST['valor'] as $indice=3D>$valor) {
> >        $campos[]=3D $indice;
> >                $values[]=3D "'$valor'";
> >    }
> >
> >        $campos=3D implode(", ", $campos);
> >        $values=3D implode(", ", $values);
> >        echo "($campos) VALUES ($values)";
> > }
> > ?>
> >
> > dentro de un form, boton demas pero solo me muestra un solo registro o
> sea,
> > logro que me traiga los resultados con el checkbox si se fijan esta
> dentro
> > del array, pero cuando se=C3=B1alo mas de un valor solo me muestra el p=
rimero
> > que se=C3=B1ale, nunca todos si le hago un var_dump() tambien me trae e=
l
> primero
> > que se=C3=B1alo, =C2=BFalguien sabe como puedo hacer que me muestre tod=
os los que
> > marco en los checkbox?.
> >
> > Espero haberme explicado, muchisimas gracias.
>
>


--=20
Luis Vega Mart=C3=ADnez
Web Design & Development
www.crea7ive.cl | Cel: 6678 7687
www.twitter.com/fodsite

--047d7bd758609846f504fa77cd1b--