Foros del Web » Programando para Internet » PHP »

Me gustaria aprender a hacer una funcion

Estas en el tema de Me gustaria aprender a hacer una funcion en el foro de PHP en Foros del Web. Hola a ver si me podeis ayudar en aprende a hacer una funcion si se puede hacer teniendo un codigo html. Ya se que si ...
  #1 (permalink)  
Antiguo 16/01/2010, 02:16
 
Fecha de Ingreso: abril-2009
Mensajes: 36
Antigüedad: 15 años
Puntos: 0
Me gustaria aprender a hacer una funcion

Hola a ver si me podeis ayudar en aprende a hacer una funcion si se puede hacer teniendo un codigo html.
Ya se que si a este codigo lo incluyo en una pagina php y la llamo todas las veces que pueda con include, pues me funciona sin ningun problema.
Pero he pensado si se puede hacer con una funcion.
Y ahi es donde no ser como hacerlo.
Este es el codigo html para hacer la funcion que se llame por ejemplo: lupas().
-----------------------------------------------------------------
He probado a hacerlo asi, pero no me funciona
Que puedo tener mal.
Código PHP:
<?php
funtion lupas
() {
$lupa='
<div class="Page-Lupas"> 
<a href="" onclick="javascript:dzDecreaseFontSize('
Tipo-Letra'); return false;">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/menos.png" alt="Disminuir el Texto"/>
</a>
<a href="" onclick="javascript:dzIncreaseFontSize('
Tipo-Letra'); return false;">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/mas.png" alt="Aumentar el Texto"/>
</a>
<a href="" onclick="javascript:window.print();">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/print.png" alt="Imprimir"/>
</a>
</div>'
;
echo 
$lupa();
}
?>
---------------------------------------------------------------------
Muchas gracias como siempre por vuestra ayuda

Última edición por antuangarcia; 16/01/2010 a las 03:41
  #2 (permalink)  
Antiguo 16/01/2010, 04:29
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 1 mes
Puntos: 20
Respuesta: Me gustaria aprender a hacer una funcion

Cita:
Iniciado por antuangarcia Ver Mensaje
Hola a ver si me podeis ayudar en aprende a hacer una funcion si se puede hacer teniendo un codigo html.
Ya se que si a este codigo lo incluyo en una pagina php y la llamo todas las veces que pueda con include, pues me funciona sin ningun problema.
Pero he pensado si se puede hacer con una funcion.
Y ahi es donde no ser como hacerlo.
Este es el codigo html para hacer la funcion que se llame por ejemplo: lupas().
-----------------------------------------------------------------
He probado a hacerlo asi, pero no me funciona
Que puedo tener mal.
Código PHP:
<?php
funtion lupas
() {
$lupa='
<div class="Page-Lupas"> 
<a href="" onclick="javascript:dzDecreaseFontSize('
Tipo-Letra'); return false;">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/menos.png" alt="Disminuir el Texto"/>
</a>
<a href="" onclick="javascript:dzIncreaseFontSize('
Tipo-Letra'); return false;">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/mas.png" alt="Aumentar el Texto"/>
</a>
<a href="" onclick="javascript:window.print();">
<img class="Page-Right" border="0" style= "width: 3%;" src="img/print.png" alt="Imprimir"/>
</a>
</div>'
;
echo 
$lupa();
}
?>
---------------------------------------------------------------------
Muchas gracias como siempre por vuestra ayuda

Tenias 5 fallos, fíjate en la solución y en tu script para que veas las diferencias
  1. Declarabas mal la función
  2. Como tu variables $lupa es un string que empieza con comillas simples, estabas teniendo problemas con las comillas simples de 'Tipo-Letra'. Las he cambiado por comillas dobles.
  3. No puedes hacer un echo de esa manera: echo $lupa();
  4. Te faltaba retornar un valor, (es aconsejable)
  5. Cuando terminas la función, (fuera) debes llamarla, y como en este caso lo que retornas es un string, debes imprimes su salida con un echo, si quieres que muestre algo.


Código PHP:
Ver original
  1. <?php
  2. // Te faltaba la C en funCtion
  3. function lupas() {
  4.     $lupa='
  5.     <div class="Page-Lupas">
  6.     <a href="" onclick="javascript:dzDecreaseFontSize("Tipo-Letra"); return false;">
  7.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/menos.png" alt="Disminuir el Texto"/>
  8.     </a>
  9.     <a href="" onclick="javascript:dzIncreaseFontSize("Tipo-Letra"); return false;">
  10.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/mas.png" alt="Aumentar el Texto"/>
  11.     </a>
  12.     <a href="" onclick="javascript:window.print();">
  13.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/print.png" alt="Imprimir"/>
  14.     </a>
  15.     </div>';
  16.     return $lupa;
  17. }
  18. // llamas a la función y como es un string haces un echo de ella
  19. echo lupas();
  20. ?>

Salu2!
  #3 (permalink)  
Antiguo 16/01/2010, 05:08
Avatar de maturano  
Fecha de Ingreso: enero-2010
Ubicación: /home/
Mensajes: 537
Antigüedad: 14 años, 3 meses
Puntos: 36
Respuesta: Me gustaria aprender a hacer una funcion

Cita:
Iniciado por neodani Ver Mensaje
  1. Como tu variables $lupa es un string que empieza con comillas simples, estabas teniendo problemas con las comillas simples de 'Tipo-Letra'. Las he cambiado por comillas dobles.
Y ahora el HTML generado tiene un error de parseo, pues el atributo está entre comillas dobles y se rompe cuando intentas pasar el parámetro a la función JS .


El error era evidente gracias al coloreado de sintaxis de PHP. Moviste el error de PHP a HTML; veamos entonces el coloreado de sintaxis de HTML:
Código HTML:
Ver original
  1. <div class="Page-Lupas">
  2.     <a href="" onclick="javascript:dzDecreaseFontSize("Tipo-Letra"); return false;">
  3.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/menos.png" alt="Disminuir el Texto"/>
  4.     </a>
  5.     <a href="" onclick="javascript:dzIncreaseFontSize("Tipo-Letra"); return false;">
  6.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/mas.png" alt="Aumentar el Texto"/>
  7.     </a>
  8.     <a href="" onclick="javascript:window.print();">
  9.     <img class="Page-Right" border="0" style= "width: 3%;" src="img/print.png" alt="Imprimir"/>
  10.     </a>
  11.     </div>

Estaba bien con comillas simples, pero había que escapartas. Aunque también se tienen otras alternativas, como la sintaxis HEREDOC o incluso "salir del modo PHP" y trabajar con HTML directamente y olvidarse de estos asuntos de las comillas.
__________________
I ♥ The Music!
  #4 (permalink)  
Antiguo 16/01/2010, 05:18
 
Fecha de Ingreso: abril-2009
Mensajes: 36
Antigüedad: 15 años
Puntos: 0
Respuesta: Me gustaria aprender a hacer una funcion

Muchisimas gracias.
Me funciona muy bien como me has dicho.
Es que tengo una pagina web que quiero depurarla al maximo y una vez depurada la intentare meter el una base de datos.
De momento estoy metiendo parte de codigo html en ficheros de texto y parece que funciona.
Voy a intentar crear una plantilla comun para todas las paginas y cargar los datos a parte segun se soliciten.
De momento en lo poco que llevo, va funcionado.
Me ha servido de mucha ayuda lo que me has corregido.

Etiquetas: funcion
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 18:17.