Foros del Web » Programando para Internet » PHP »

Problema insertar categoria

Estas en el tema de Problema insertar categoria en el foro de PHP en Foros del Web. Hola amigos tengo esto: <table border="0" cellspacing="0" cellpadding="0" width="500" align="center"> <tr> <td class="pageName">Actualizar Noticia </td> </tr> <tr> <td class="bodyText"> <form action="index.php?mod=noticias&pag=guardar_noticia &id=<?php echo $_GET['id']?>" method="post" ...
  #1 (permalink)  
Antiguo 06/03/2009, 15:33
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Problema insertar categoria

Hola amigos tengo esto:

<table border="0" cellspacing="0" cellpadding="0" width="500" align="center">
<tr>
<td class="pageName">Actualizar Noticia </td>
</tr>
<tr>
<td class="bodyText">
<form action="index.php?mod=noticias&pag=guardar_noticia &id=<?php echo $_GET['id']?>" method="post" name="frmNoticia">
<input name="hdn_id" type="hidden" value="<?php echo $item_noticia->id ?>" />
<table width="90%" border="1">
<tr>
<td>Titulo</td>
<td>
<input name="edt_titulo" type="text" size="30" maxlength="100" value="<?php echo $item_noticia->titulo ?>"/>
</td>
</tr>
<tr>
<td>Texto Corto:</td>
<td><textarea name="txt_textocorto" cols="30"><?php echo $item_noticia->texto_corto ?></textarea>
</td>
</tr>
<tr>
<td>Texto Completo:</td>
<td><textarea name="txt_textocompleto" cols="30"><?php echo $item_noticia->texto_completo ?></textarea>
</td>
</tr>
<tr>
<td>Estado de Publicacion:</td>
<td><input type="checkbox" name="chbx_estado" value="1" <?php if($item_noticia->estado == 1) echo 'checked="checked"'; ?> />
</td>
</tr>
<tr>
<td>Categoria:</td>
<td><select name="categoria"> <option value=""> Escoger Lista </option>
<?php
if ($items_categoria) {
foreach ($items_categoria as $item_categoria){
echo "<option value='$item_categoria->id'>$item_categoria->categoria - $item_categoria->id</option>";
}
}

?>
</select>
</td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Guardar" /></td>
</tr>
</table>
</form>
</td>
</tr>
<tr>
<td class="bodyText"></td>
</tr>
</table>

Me aparece todo menos la parte del select donde estan mis categorias solo tengo problemas con este pq con el de insertar me sale todo bien y las categorias que tengo para insertar pero con este no este es mi controlador:

case 'editar_noticia':
$id = intval($_GET['id']);
//if ($MOD['categorias']->isCategoria($id)) {
$items_categoria = $MOD['categorias']->getCategorias();
$items_noticia = $MOD['noticias']->getNoticia($id);

if ($items_noticia) {
$item_noticia = $items_noticia[0];
include('modulos/noticias/vistas/editar_noticia.html.php');
} else {
echo "No existe la noticia con el ID indicado";
}
//} else {
//echo "No existe la categoria seleccionada" ;
//}
Hice pruebas y no me sale saben pq
  #2 (permalink)  
Antiguo 06/03/2009, 16:03
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Poo

Puede ser porque el form lo pasas por POST no por GET? aparte de que tienes que rescatar $_POST['categoria'] ya que ahí es donde viene la categoria.

Te recomiendo hacer un var_dump($_POST) para que veas los valores que trae tu form.

Saludos
  #3 (permalink)  
Antiguo 06/03/2009, 16:19
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Poo

Todo el problema empezo cuando inserte a mis html insertar y editar el campo select para que me nuestre las categorias que tengo antes de esto todo funcionaba muy bien pero ahora solo consegui que me muestre en el insertar
Y me fije lo que me dijiste
Este es mi controlador

case 'insertar_noticia':
//if(!empty($_SESSION['usuario_id'])&&($_SESSION['usuario_nivel']==3)){
$id = intval($_GET['id']);
if ($MOD['categorias']->isCategoria($id)) {
$items_categoria = $MOD['categorias']->getCategorias();
include('modulos/noticias/vistas/insertar_noticia.html.php');
} else {
echo "No existe la categoria seleccionada" ;
}
//} else {
//echo "Usted no tiene permisos";
//}
break;
case 'editar_noticia':
//if(!empty($_SESSION['usuario_id'])&&($_SESSION['usuario_nivel']==3)){

$id = intval($_GET['id']);
//if ($MOD['categorias']->isCategoria($id)) {
$items_categoria = $MOD['categorias']->getCategorias();
$items_noticia = $MOD['noticias']->getNoticia($id);

if ($items_noticia) {
$item_noticia = $items_noticia[0];
include('modulos/noticias/vistas/editar_noticia.html.php');
} else {
echo "No existe la noticia con el ID indicado";
}
//} else {
//echo "No existe la categoria seleccionada" ;
//}
//} else {
//echo "Usted no tiene permisos";
//}

break;
case 'guardar_noticia':
//if(!empty($_SESSION['usuario_id'])&&($_SESSION['usuario_nivel']==3)){
$id = intval($_POST['hdn_id']);
$titulo = trim($_POST['edt_titulo']);
$texto_corto = trim($_POST['txt_textocorto']);
$texto_completo = trim($_POST['txt_textocompleto']);
$estado = intval($_POST['chbx_estado']);
$categoria = var_dump($_POST['categoria']);


if (empty($id)) {
if ($MOD['noticias']->setNoticia($titulo, $texto_corto, $texto_completo, $estado, $_SESSION['usuario_id'],$categoria)){
echo "Registro exitoso!. Espere unos instantes";
echo "<meta http-equiv=\"refresh\" content=\"2;URL=index.php?mod=noticias&pag=listado _noticia&id=$_GET[id]\">\n";
} else {
echo "El registro no fue exitoso";
}
} else {
if ($MOD['noticias']->setNoticia($titulo, $texto_corto, $texto_completo, $estado, $_SESSION['usuario_id'],$categoria, $id)){
echo "Actualización exitosa!. Espere unos instantes";
echo "<meta http-equiv=\"refresh\" content=\"2;URL=index.php?mod=noticias&pag=listado _noticia&id=$_GET[id]\">\n";
} else {
echo "La actualización no fue exitosa";
}
}

//} else {
//echo "Usted no tiene permisos";
//}
break;
case 'leer_noticia':
$id = intval($_GET['id']);
$items_noticias = $MOD['noticias']->getNoticia($id);
if ($items_noticias) {
$item_noticias = $items_noticias[0];
include('modulos/noticias/vistas/leer_noticia.html.php');
} else {
echo "No existe la noticia seleccionada" ;
}
break;
case 'eliminar_noticia':
$id = $_GET['id'];

if (!empty($id)) {
if ($MOD['noticias']->delNoticia($id)){
echo "El registro se elimino!. Espere unos instantes";
echo "<meta http-equiv=\"refresh\" content=\"2;URL=index.php?mod=noticias&pag=listado _noticia&id=$_GET[id]\">\n";
} else {
echo "El registro no pudo ser eliminado. Puede que este ya no exista";
}
} else {
echo "Error 403: Acceso incorrecto";
}
break;
case 'listado_noticia':
default:
//if(!empty($_SESSION['usuario_id'])&&($_SESSION['usuario_nivel']==3)){
$id = intval($_GET['id']);
//if ($MOD['categorias']->isCategoria($id)) {
//$items_noticia = $MOD['noticias']->getNoticias($id);
if ($items_noticia) {
include('modulos/noticias/vistas/listar_noticia.html.php');
} else {
echo 'No existen noticias publicadas';
}
//} else {
//echo "No existe la categoria seleccionada" ;
//}
//} else {
//$items_noticia = $MOD['noticias']->getNoticias();
//if ($items_noticia) {
//include('modulos/noticias/vistas/listado_visitante.html.php');
//} else {
// echo 'No existen noticias publicadas';
//}
//}


}
?>


En la parte de guarda_noticia es donde me la juego pero no logro entender
  #4 (permalink)  
Antiguo 06/03/2009, 16:37
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema insertar categoria

Solo una pregunta: Como es que usas en tus scripts una clase que no entiendes?

Creo que eso, a la larga, en lugar de beneficiarte te va a perjudicar haciendote pasar mas tiempo tratando de buscar errores que lo que puedas tardar programando por ti mismo cada consulta.
__________________
- León, Guanajuato
- GV-Foto
  #5 (permalink)  
Antiguo 06/03/2009, 16:54
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema insertar categoria

Tridy si fuese un genio no estaria preguntando no ??
Consulta como podria resollver el problema ?
  #6 (permalink)  
Antiguo 06/03/2009, 16:57
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema insertar categoria

Que esperas hacer con: $categoria = var_dump($_POST['categoria']);

var_dump es para imprimir....
  #7 (permalink)  
Antiguo 06/03/2009, 17:12
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Problema insertar categoria

majony, no te critico por preguntar, de hecho la mayoria de nosotros hemos aprendido a base de prueba y error, solo te sugeria valorar la "utilidad u obstaculo" que puede representar la clase que estas usando, de momento no puedo aportar mas porque GatorV esta sugiriendo los pasos ideales para encontrar la falla en tu script.
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 06/03/2009, 17:27
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: Problema insertar categoria

Muchas Gracias de verdad GatorV Y MIL PERDONES Triby si me enoje un poco ya lo resolvi
a ver pero si me explican que paso porque puese asi
Código php:
Ver original
  1. case 'guardar_noticia':
  2.             //if(!empty($_SESSION['usuario_id'])&&($_SESSION['usuario_nivel']==3)){
  3.                 $id = intval($_POST['hdn_id']);
  4.                 $titulo = trim($_POST['edt_titulo']);
  5.                 $texto_corto = trim($_POST['txt_textocorto']);
  6.                 $texto_completo = trim($_POST['txt_textocompleto']);
  7.                 $estado = intval($_POST['chbx_estado']);
  8.                 $categoria = trim($_POST['categoria']);
  9.                  /* esta linea y se arreglo todo de manera automatica ya puedo insertar , editar , elimnar y demas */  
  10.                                var_dump ($categoria);
  11.                     if (empty($id)) {
  #9 (permalink)  
Antiguo 06/03/2009, 23:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema insertar categoria

Pues el problema si ves mi post es que estabas tratando de asignar algo a tu variable $categoria, pero var_dump no regresa nada.

Saludos
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 11:55.