Error al actualizar registro con seleccionado con checkbox

Tengo una consulta de mi mysql y el listado tiene un checkbox para seleccionar el registro que se quiera actualizar o borrar, según la opción elegida en un pequeño desplegable, pero no consigo que me permita modificar el contenido de la consulta, este es mi código en el archivo consulta.php:

¿

<?php
include_once "../conexion.php";
$table = "wp_art_consejos";
$query = "SELECT * FROM $table ORDER BY id DESC";

$queEmp = mysql_query($query, $link) or die(mysql_error());
?>
...
<?php
$vacio = true;
$i=0;
while($row= mysql_fetch_assoc($queEmp)){
echo " <tr>";
if(!is_dir($row))
{
$vacio = false;
if($i%2==0)
{
$color="a09e9e";
}else
{
$color="eceaea";
} ;
echo"<td bgcolor='#$color'><input name='checkbox[]' id='checkbox[]' type='checkbox' value='".$row["id"]."'></td><td bgcolor='#$color'>".$row['author']."</td>";;
echo "<td bgcolor='#$color'>".$row['prediccion']."</td>";
echo "<td bgcolor='#$color'>".$row['porcentaje']."</td>";
echo "<td bgcolor='#$color'>".$row['text']."</td>";
echo " </tr>";
$i++;
}
} mysql_close($link);
?>
</table>
</form>
</div>
<div id="actions-box">
<a href="" class="action-slider"></a>
<div id="actions-box-slider">
<a class="action-edit" href="editar_consejo.php?id=<?php echo $row['id'];?>" >Editar</a>
<a class="action-delete" href="borrar_consejo.php?id=<?php echo $row['id'];?>" >" >Borrar</a>
</div>
<div class="clear"></div>
</div>

el archivo editar_consejo.php

<?php
include_once "../conexion.php";
require("funciones.php");
$código = getParam($_GET["id"], "-1");
$action = getParam($_GET["action"], "");
if ($action == "edit") {
$código = sqlValue($_POST["id"], "int");
$author = sqlValue($_POST["author"], "varchar");
$prediccion = sqlValue($_POST["prediccion"], "varchar");
$porcentaje = sqlValue($_POST["porcentaje"], "int");
$text = sqlValue($_POST["text"], "text");
$sql = "UPDATE wp_art_consejos SET ";
$sql.= "author=".$author.",prediccion=".$prediccion.",porcentaje=".$porcentaje.",text=".$text." ";
$sql.= "WHERE id=".$código;
mysql_query($sql, $link);
header("location: consulta.php");
}
$sql = "SELECT * FROM wp_art_consejos WHERE id = ".sqlValue($código, "int");
$queEmp = mysql_query($sql, $link);
$row = mysql_fetch_assoc($queEmp);
$total = mysql_num_rows($queEmp);
if ($total == 0) {
header("location: consulta.php");
exit;
}
?>

-----------------------------------------------------------------------------------------------------

<form name="form1" method="post" action="editar_consejo.php?action=edit">
<div>
<label for="author">Rivales:</label><input type="text" name="author" id="author" value="<?php echo $row["author"]; ?>" /></div>
<div>
<label for="prediccion">Prediccion:</label><input type="text" name="prediccion" id="prediccion" value="<?php echo $row["prediccion"]; ?>" />
<label for="porcentaje">porcentaje:</label><input name="porcentaje" type="text" id="porcentaje" size="5" maxlength="5" value="<?php echo $row["porcentaje"]; ?>" /></div>
<div>
<label for="text">Texto:</label></div>
<div><textarea id="text" name="text" rows="10" cols="80"><?php echo $row["text"]; ?></textarea></div>
<div>
<input type="submit" name="btn" id="btn" value="Guardar Cambios"></div>
<input type="hidden" id="id" name="id" value="<?php echo $row["id"]; ?>" />
</form>

¿Me puede ayudar a encontrar porque no funciona?

1 respuesta

Respuesta
1

Para ayudarte agarro el código y lo pruebo.

Pero aquí falta código, porque después del "} mysql_close($link);" cierrdas un div y un form que no se donde lo abriste, el div no me interesa pero el form si.

Trata de pegar el código completo así te ayudo y por favor usa la herramienta que nos da todoexpertos para pegar código fuente en la pregunta.

Es la segunda contando de derecha a izquierda.

Gracias por el interés pero ya encontré el error, ahora lo que me trae de cabeza el paginar que no me funciona y estoy utilizando un código dado en todoexpertos. me podrías ayudar o tengo que abrir otra pregunta??

este es mi código y al pulsar en siguiente o atrás no hace nada

<?php
include_once "../conexion.php";
$table = "wp_art_consejos";
?>
<html>
<head>
<title>Páginación de resultados</title>
</head>
<body bgcolor=#FFFFFF> 
<?php
if (!isset($pg))
$pg = 0; 
$cantidad=10; 
$inicial = $pg * $cantidad;
$pegar = "SELECT * FROM $table ORDER BY id DESC LIMIT $inicial,$cantidad";
$cad = mysql_db_query($db_nombre,$pegar) or die (mysql_error());
$contar = "SELECT * FROM $table ORDER BY id DESC"; 
$contarok= mysql_db_query($db_nombre,$contar);
$total_records = mysql_num_rows($contarok);
$pages = intval($total_records / $cantidad);
?>
 <table border="0" width="100%" cellpadding="0" cellspacing="0" id="product-table">
 <tr>
 <th ><a id="toggle-all" ></a> </th>
 <th>Rivales </th>
 <th>Prediccion</th>
 <th >Porcentaje</th>
 <th>Texto</th>
 </tr>
 <?php
$vacio = true; 
$c=0;
while($array = mysql_fetch_array($cad)) {
echo " <tr>";
 if(!is_dir($array))
 {
 $vacio = false;
 if($c%2==0)
 {
 $color="a09e9e";
 }else
 {
 $color="eceaea";
 } ; 
 echo"<td bgcolor='#$color'><input name='checkbox[]' id='checkbox[]' type='checkbox' value='".$array["id"]."'></td><td bgcolor='#$color'>".$array['author']."</td>";
 echo "<td bgcolor='#$color'>".$array['prediccion']."</td>";
 echo "<td bgcolor='#$color'>".$array['porcentaje']."</td>";
 echo "<td bgcolor='#$color'>".$array['text']."</td>";
 echo " </tr>";
 $c++;
 }
} 
$con=mysql_close($link);
?>
</table>
<?php
echo "<p>";
if ($pg <> 0)
{
$url = $pg - 1;
echo "<a href='index.php?pg=".$url."'>« Anterior</a> ";
}
else {
echo " ";
}
for ($i = 0; $i<($pages + 1); $i++) {
if ($i == $pg) {
echo "<font face=Arial size=2 color=ff0000><b> $i </b></font>";
}
else {
echo "<a href='index.php?pg=".$i."'>".$i."</a> ";
}
}
if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='index.php?pg=".$url."'>Siguiente »</a>";
}
else {
echo " ";
}
echo "</p>";
?>
</body>
</html>

Cambiá

if (!isset($pg))
$pg = 0; 

por:

if($_GET['pg']==""){
    $_GET['pg']=0;
}
$pg=$_GET['pg'];

Pruébalo y contame.

Perfecto funciona como un reloj mil gracias!!!!

De nada cerrá la pregunta y califícame lindo jaja !

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas