Foros del Web » Programando para Internet » PHP »

funcion en php

Estas en el tema de funcion en php en el foro de PHP en Foros del Web. Hola!! Comento mi problema: Quiero que dependiendo de la extensión del archivo, ponga una imagen u otra pero no consigo que funcione, no da ningún ...
  #1 (permalink)  
Antiguo 26/03/2011, 08:49
 
Fecha de Ingreso: abril-2010
Mensajes: 78
Antigüedad: 14 años
Puntos: 0
funcion en php

Hola!!
Comento mi problema:

Quiero que dependiendo de la extensión del archivo, ponga una imagen u otra pero no consigo que funcione, no da ningún error al mostrar la web pero no sabe el icono correcto.

Código de la función:
Código PHP:
function extension($ext)
    {
    if (
$ext == "/files/*.zip") {
$exten="<img src='./images/icon_zip.png'>";
return 
$exten;
}
else { if (
$ext == 'files/*.doc') {
$exten="<img src='./images/icon_doc.png'>";
return 
$exten;
}
else {if (
$ext == 'files/*.xls') {
$exten="<img src='./images/icon_xls.png'>";
return 
$exten;
}
else {if (
$ext == 'files/*.pdf') {
$exten="<img src='./images/icon_pdf.png'>";
return 
$exten;
}
else {if (
$ext == 'files/*.rar') {
$exten="<img src='./images/icon_rar.png'>";
return 
$exten;
}
else
{
$exten="<img src='./images/icon_txt.png'>";
return 
$exten;
}}}}}} 
Código de la tabla que lista:
Código PHP:
echo "<h3>List</h3>";

        echo 
'<form name="tablagastos" action="index.php" method="post">';
        echo 
"<table border=1 bgcolor=ffffcc bordercolor=ff0000> ";
        echo 
"<tr bgcolor=grey align=center><td>Delete</td><td>Id</td><td>Concept</td><td>Address</td><td>Month</td><td>Notes</td><td>File</td><td colspan='2'>Options</td></tr>";
    foreach (
$llista as $fila)
    {
    echo 
"<tr>";
        echo 
'<td><input type="checkbox" name="select[]" value="'.$fila ["id"].'"><br></td>';
        echo 
"<td>".$fila ["id"]."</td>";
        echo 
"<td>".$fila ["concepto"]."</td>";
        echo 
"<td>".$fila ["direccion"]."</td>";
        echo 
"<td>".$fila ["mes"]."</td>";
        echo 
"<td>".$fila ["notas"]."</td>";
        echo 
"<td align=center><a href='".$fila ["ruta_fichero"]."' target='_blank''>".$ext=extension($fila["ruta_fichero"])."</a></td>";
        echo 
"<td><a href='index.php?oper=1&id=".$fila ["id"]."'><img src='./images/b_drop.png'></a></td>";
    echo 
"<td><a href='index.php?oper=2&id=".$fila ["id"]."'><img src='./images/b_edit.png'></a></td>";
        echo 
"</tr>";
    }
    echo 
"</table>";
            echo
'<input name="delete" type="submit" value="delete">';
        echo 
'</form>'

Gracias por adelantado!!
  #2 (permalink)  
Antiguo 26/03/2011, 09:10
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 19
Respuesta: funcion en php

Hola, proba con esta funcion:

Código PHP:
function extension(ext){
    if (
ext.search(".zip") > 0) {
           return 
"<img src='./images/icon_zip.png'>";
        }
    if (
ext.search(".doc") > 0) {
           return 
"<img src='./images/icon_doc.png'>";
        }
    if (
ext.search(".rar") > 0) {
           return 
"<img src='./images/icon_rar.png'>";
        }
    if (
ext.search(".xls") > 0) {
           return 
"<img src='./images/icon_xls.png'>";
        }

Solamente lo hice para una sola. La funcion search de javascript te devuelve el indice donde comienza la cadena que estas buscando, en este caso ".zip", si devuelve -1 es porque la cadena no esta.

Me tome la libertad de corregir la funcion javascript, ya que cuando la utilizas no tenes que usar el identificador de variables de php "$"

Espero haber sido de ayuda.

Saludos
__________________
"No entiendes algo al menos que seas capaz de explicarselo a tu abuela.
Cada dia sabemos mas....y entendemos menos...."

A. Einstein - Genio mas alla de la razon.
  #3 (permalink)  
Antiguo 26/03/2011, 09:14
 
Fecha de Ingreso: abril-2010
Mensajes: 78
Antigüedad: 14 años
Puntos: 0
Respuesta: funcion en php

Cita:
Iniciado por ArkangelGammar Ver Mensaje
Hola, proba con esta funcion:

Código PHP:
function extension(ext){
    if (
ext.search(".zip") > 0) {
           return 
"<img src='./images/icon_zip.png'>";
        }
    if (
ext.search(".doc") > 0) {
           return 
"<img src='./images/icon_doc.png'>";
        }
    if (
ext.search(".rar") > 0) {
           return 
"<img src='./images/icon_rar.png'>";
        }
    if (
ext.search(".xls") > 0) {
           return 
"<img src='./images/icon_xls.png'>";
        }

Solamente lo hice para una sola. La funcion search de javascript te devuelve el indice donde comienza la cadena que estas buscando, en este caso ".zip", si devuelve -1 es porque la cadena no esta.

Me tome la libertad de corregir la funcion javascript, ya que cuando la utilizas no tenes que usar el identificador de variables de php "$"

Espero haber sido de ayuda.

Saludos
Hola!!

No me reconoce ext.search, me salen errores :(
  #4 (permalink)  
Antiguo 26/03/2011, 09:17
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 19
Respuesta: funcion en php

que error te sale? copiaste la funcion como yo te la pase?
__________________
"No entiendes algo al menos que seas capaz de explicarselo a tu abuela.
Cada dia sabemos mas....y entendemos menos...."

A. Einstein - Genio mas alla de la razon.
  #5 (permalink)  
Antiguo 26/03/2011, 09:20
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: funcion en php

Cita:
Iniciado por Titulo de post original
funcion en php
Cita:
Iniciado por ArkangelGammar Ver Mensaje

Solamente lo hice para una sola. La funcion search de javascript te devuelve el indice donde comienza la cadena que estas buscando, en este caso ".zip", si devuelve -1 es porque la cadena no esta.

Me tome la libertad de corregir la funcion javascript, ya que cuando la utilizas no tenes que usar el identificador de variables de php "$"

Espero haber sido de ayuda.

Saludos
ehh...


On topic: Puedes usar strpos()
  #6 (permalink)  
Antiguo 26/03/2011, 09:21
 
Fecha de Ingreso: abril-2010
Mensajes: 78
Antigüedad: 14 años
Puntos: 0
Respuesta: funcion en php

Si no pongo el $ me sale en error en esa linea. Si lo pongo y con tu función copiada exacta me sale:

Código:
Notice: Use of undefined constant ext - assumed 'ext' in /opt/lampp/htdocs/index.php on line 113

Fatal error: Call to undefined function search() in /opt/lampp/htdocs/index.php on line 113
  #7 (permalink)  
Antiguo 26/03/2011, 09:26
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 19
Respuesta: funcion en php

Tienen toda la razon, me confundi yo. Estaba pensando en javascript. Sorry.

Esta seria la funcion en php

function extension($ext){
if (strpos($ext,".zip") !== false) {
return "<img src='./images/icon_zip.png'>";
}
}

Y sucesivamente con todas las extenciones.

Desde ya te pido disculpas.

Saludos
__________________
"No entiendes algo al menos que seas capaz de explicarselo a tu abuela.
Cada dia sabemos mas....y entendemos menos...."

A. Einstein - Genio mas alla de la razon.
  #8 (permalink)  
Antiguo 26/03/2011, 09:46
 
Fecha de Ingreso: abril-2010
Mensajes: 78
Antigüedad: 14 años
Puntos: 0
Respuesta: funcion en php

Cita:
Iniciado por ArkangelGammar Ver Mensaje
Tienen toda la razon, me confundi yo. Estaba pensando en javascript. Sorry.

Esta seria la funcion en php

function extension($ext){
if (strpos($ext,".zip") !== false) {
return "<img src='./images/icon_zip.png'>";
}
}

Y sucesivamente con todas las extenciones.

Desde ya te pido disculpas.

Saludos
No te preocupes!!! jejeje

Con esta función que comentáis me funcionó a la perfección :D

Muchas gracias a los dos!!!!

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:08.