Foros del Web » Programando para Internet » PHP »

Ayuda x favor!!!

Estas en el tema de Ayuda x favor!!! en el foro de PHP en Foros del Web. Amigos alguno me podria ayudar a corregir este error: Este es el codigo del q me tira el error: <?php $productos=array(array("A","Action",100), array("P","Photo",18), array("F","Flash",40)); echo $productos[2][2]; ...
  #1 (permalink)  
Antiguo 05/02/2010, 00:29
 
Fecha de Ingreso: febrero-2010
Mensajes: 4
Antigüedad: 14 años, 2 meses
Puntos: 0
Ayuda x favor!!!

Amigos alguno me podria ayudar a corregir este error:

Este es el codigo del q me tira el error:

<?php

$productos=array(array("A","Action",100),
array("P","Photo",18),
array("F","Flash",40));
echo $productos[2][2];

function compara($x,$y)
{
if($x[2]==$y[2])
return 0;
else if ($x[2]< $y[2])
return -1;
else
return 1;
}

usort ($productos,compara);
echo $productos[2][2];


?>



Y este es el error:

40
Notice: Use of undefined constant compara - assumed 'compara' in C:\wamp\www\Macho\php11\vt11\usort2.php on line 18
100


Se le agradece a todos su colaboracion, Muchas Gracias!!!!


Y tambien en otro codigo me tiran errores parecidos ejem:


Notice: Use of undefined constant Cod - assumed 'Cod' in C:\wamp\www\Macho\php10\practicas\array8.php on line 4

Notice: Use of undefined constant Descrip - assumed 'Descrip' in C:\wamp\www\Macho\php10\practicas\array8.php on line 5

Notice: Use of undefined constant precio - assumed 'precio' in C:\wamp\www\Macho\php10\practicas\array8.php on line 6
  #2 (permalink)  
Antiguo 05/02/2010, 05:56
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Ayuda x favor!!!

usort ($productos,compara); <- estas usando una funcion como una constante... las funciones se usan con el parentesis. aunque no tenga argumentos
Código PHP:
Ver original
  1. function saludar(){
  2.     echo "hola";
  3. }
  4. saludar();
__________________
More about me...
~ @rhyudek1
~ Github
  #3 (permalink)  
Antiguo 05/02/2010, 09:11
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda x favor!!!

Cita:
Iniciado por Hidek1 Ver Mensaje
usort ($productos,compara); <- estas usando una funcion como una constante... las funciones se usan con el parentesis. aunque no tenga argumentos
Código PHP:
Ver original
  1. function saludar(){
  2.     echo "hola";
  3. }
  4. saludar();
no, de hecho... el esta usando dichas palabras como si fueran strings, ya que el compilador asume que son strings...

que claro, debería usar comillas... ya que se trata de strings...

Macho0587, y todo error parecido es por lo mismo... entiende que debes usar comillas pues se trata de strings... ;)
Código PHP:
usort ($productos"compara"); 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 05/02/2010, 09:53
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 6 meses
Puntos: 334
Respuesta: Ayuda x favor!!!

supuse que intentaba llamar a una funcion


Cita:
function compara($x,$y)
Cita:
usort ($productos,compara);
ahora que eso valla a funcionar asi.. es otra cosa
__________________
More about me...
~ @rhyudek1
~ Github
  #5 (permalink)  
Antiguo 05/02/2010, 10:06
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda x favor!!!

Cita:
Iniciado por Hidek1 Ver Mensaje
supuse que intentaba llamar a una funcion [...] ahora que eso valla a funcionar asi.. es otra cosa
si, lo que sucede es que usort() recibe como segundo parámetro un callback, y puesto a que PHP es muy flexible... suele asumir una constante como string, y un pésimo programador piensa que eso es normal... hasta correcto!!

en resumen, una leída rápida al manual nos deja libres de dudas... ;)
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

Etiquetas: favor
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 07:08.