Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Mostrar nombre categorias

Hola a todos! Bien, me estaba preguntando como puedo hacer 2 cosas:

1) Mostrar los nombres de las categorias, porque cuando publico un post sale el numero de categosria. Codigo:
<option value="1" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 1</option>
<option value="2" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 2</option>
<option value="3" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 3</option>
En vez de salir Categoria 1 o 2 o 3, sale su valor. Nose si tendria que en valor poner el nombre...

2) Como hago para agregar nombres sin valor, osea que no puedas publicar hasta que no selecciones una categoria. ejmeplo:
<option value="?" <?php if (!(strcmp(1,""))) {echo "SELECTED";} ?>>Seleccionar Categoria</option> //Esta sale por defecto, pero no tendria que tener valor.
<option value="1" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 1</option>
<option value="2" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 2</option>
<option value="3" <?php if (!(strcmp(1, ""))) {echo "SELECTED";} ?>>Categoria 3</option>
Desde ya muchas gracias por leer! Saludos!!
0
Puntos
1001
Visitas
6
Resp
Por GeorgeHarrison hace 52 meses
Principiante
Respuesta #1
Hola GeorgeHarrison,

Bueno en tu primera duda, entiendo que cuando publicas un post, en vez de decirte el nombre de la categoría te sale es un número (el valor que corresponde a dicha categoría ¿no?) Bueno, yo lo que hago es colocar un código php al momento de mostrar el post que dice: "Si el valor es 1, muestra Categoria X, si el valor es 2, muestra Categoría Y, si el valor es 3, muestra Categoría Z.
<?php switch ($SacarPost['categoria']) {
	case '1':
		echo 'Categoría X';
		break;
	
	case '2':
		echo 'Categoría Y';
		break;

	case '3':
		echo 'Categoría Z';
		break;

	default:
		echo Categoría X';
}; ?>
O sea el código lo que hace es obtener el valor de la base de datos en la columna de categoría y lo reemplaza por el texto que yo le diga.


Ahora, para tu segunda duda. Yo al primer option le colocaría value="0" y luego hacer una condición que diga que: Si el valor de categoría > 0. Publicar el post, si no, no publicar el post. Ejemplo.
<select name="categoria">
    <option value="0">Seleccione una categoría</option>
    <option value="1">Categoría A</option>
    <option value="2">Categoría B</option>
</select>
En el PHP, antes del código para publicar colocarías..
<?php
if ($_POST['categoria'] > 0) {
    
    #CODE

}
?>

Cualquier duda, dime. :)
15
Puntos
Por Jose hace 52 meses
Experto Sitio web
Respuesta #2
Muchisimas gracias por responder, pero descubri que en todos los post me muestra el mismo numero de categoria, que es el del primer post creado. Osea, creo el primer post y le pongo la categoria 3, pero cuando creo el segundo y le pongo categoria 8, me muestra la categoria 3...Bien, cuando lo pueda solucionar pruebo lo que me pusiste. Muchas gracias!!
0
Puntos
Por GeorgeHarrison hace 52 meses
Principiante
Respuesta #3
¿En la tabla en la base de datos te sale la misma categoría o te sale las diferentes categorías que tu eliges?
0
Puntos
Por Jose hace 52 meses
Experto Sitio web
Respuesta #4
En la base de datos me sale bien la categoria, me sale el numero segun la que elegi
0
Puntos
Por GeorgeHarrison hace 52 meses
Principiante
Respuesta #5
Ok, si puedes coloca el código de tu archivo donde muestras los post para ver que tienes :P
0
Puntos
Por Jose hace 52 meses
Experto Sitio web
Respuesta #6
Hola Jose, antes que nada muchas gracias por toda la atencion, ya logre slucionar el tema del numero, y gracias a lo que me habias puesto de cambiar el numero por el nombre ya me funciono!!! Asi que muchisimas gracias, un saludo!!
0
Puntos
Por GeorgeHarrison hace 52 meses
Principiante
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate