Foros del Web » Programando para Internet » PHP »

Función que genera página, cambiar sus parametros

Estas en el tema de Función que genera página, cambiar sus parametros en el foro de PHP en Foros del Web. Hola a tod@s: Vamos a ver si me explico, tengo la siguiente función: <?php function generar_pagina($title,$texto,$colorFondo,$colorTex to){ return "<html><head><title>$title</title></head> <body bgcolor=\"$colorFondo\"> <font color=\"$colorTexto\">$texto</font></body></html>" ; } ...
  #1 (permalink)  
Antiguo 08/10/2004, 17:39
 
Fecha de Ingreso: septiembre-2004
Mensajes: 15
Antigüedad: 20 años, 2 meses
Puntos: 0
Función que genera página, cambiar sus parametros

Hola a tod@s:

Vamos a ver si me explico, tengo la siguiente función:
<?php
function generar_pagina($title,$texto,$colorFondo,$colorTex to){

return "<html><head><title>$title</title></head>
<body bgcolor=\"$colorFondo\">
<font color=\"$colorTexto\">$texto</font></body></html>" ;
}
echo generar_pagina("Ejercicio 5","Estos ejercicios son muy sencillos","#000000","#ffffff");
?>
Como puedo hacer para que si al llamar a la función no pusiera por ejemplo el parametro $title, apareciera por defecto "sin título" ;
O si faltará el parametro $texto apareciera por defecto "En construcción" ;

Bueno espero haberme explicado. os doy las gracias de antemano por vuestra ayuda.
__________________
Un cordial saludo,
José Manuel
Gran Canaria/España
  #2 (permalink)  
Antiguo 08/10/2004, 17:50
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 9 meses
Puntos: 10
La variable no puede faltar... porque si, por ejemplo, no pones la variable $title y pones algo asi:

echo generar_pagina("Estos ejercicios son muy sencillos","#000000","#ffffff");

te va a tomar "Estos eje..." como el $title y la que no va a estae definida va a ser $colorTexto..

Lo que podes hacer es poner "" para los parametros que no tenes nada y despues haces algo asi.

Código PHP:

<?php
function generar_pagina($title,$texto,$colorFondo,$colorTexto){

if(empty(
$title)){
   
$title="Sin Titulo";
}

if(empty(
$texto)){
   
$texto="En construccion";
}

if(empty(
$colorFondo)){
   
$colorFondo="#FFFFFF";
}

if(empty(
$colorTexto)){
   
$colorTexto="#000000";
}
return 
"<html><head><title>$title</title></head>
<body bgcolor=\"$colorFondo\">
<font color=\"$colorTexto\">$texto</font></body></html>" 
;

}

echo 
generar_pagina("","Estos ejercicios son muy sencillos","#000000","#ffffff");
?>
__________________
oohh... quisiera ser godines!!!

Última edición por safe; 08/10/2004 a las 17:57
  #3 (permalink)  
Antiguo 08/10/2004, 18:15
 
Fecha de Ingreso: septiembre-2004
Mensajes: 15
Antigüedad: 20 años, 2 meses
Puntos: 0
Hola safe

Gracias por contestar, pero sigo teniendo problemas, a lo mejor es que me explique mal antes,

Tenemos la function generar_pagina($title,$texto,$colorFondo,$colorTex to)

lo que quiero hacer es lo siguiente: al llamar a la función:
echo generar_pagina("Ejercicios del Tema5"," " ,"#000000","#ffffff");

como el parametro $texto no lo he puesto deberá imprimir el que tengo por defecto que es "En construcción"

Espero haberme explicado, gracias
__________________
Un cordial saludo,
José Manuel
Gran Canaria/España
  #4 (permalink)  
Antiguo 08/10/2004, 18:46
 
Fecha de Ingreso: octubre-2004
Mensajes: 258
Antigüedad: 20 años, 1 mes
Puntos: 1
Amigo,

PHP no podria adivinar el Default que tienes, debes hacer IF como lo explico el amigo SAFE para saber si hay algo o no.

Puedes probar esto en la funcion

var $texto="Pagina en Construccion";

Pero........esta mal, porque si tu pasas $texto con "" eso ya borraria el supuesto default, usa el IF, mejor que eso no creo.

Saludos
__________________
Salute !!!
RollBack
  #5 (permalink)  
Antiguo 09/10/2004, 10:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
En funciones se puede definir valores por defecto según sintax:

function generar_pagina($title,$texto,$colorFondo='rojo',$c olorTex='verde'){

También hay otras funciones para leer la cantidad de parámetros que puede entrar a tu función para evaluarlos según corresponde de forma "dinámica" y no fija como es lo títpico con el trabajo con funciones.

me refireo a funciones como:
func_get_args()
http://www.php.net/manual/en/function.func-get-args.php

Un saludo,
  #6 (permalink)  
Antiguo 09/10/2004, 17:56
 
Fecha de Ingreso: enero-2003
Ubicación: Córdoba, Argentina
Mensajes: 1.047
Antigüedad: 21 años, 9 meses
Puntos: 10
no sabia lo de definir los valores por defecto de esa forma.... por suerte con cluster se aprende algo nuevo todos los dias...
__________________
oohh... quisiera ser godines!!!
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 21:55.