2010-01-31 11 views
6

estoy creatting un proyecto CodeIgniter en la que quiero pasar una variable a través de la URL como una declaración conseguir, de esta manera:
url:/site/torta/1
función del controlador: cake ($ var)
pero cuando la variable se deja en blanco, recibo un error, ¿cómo puedo obtener el código de ignitor, para ignorar esto?CodeIgniter variable Pasando al controlador usando el URL de error

+0

¿Podría publicar qué errores obtiene? Un –

+0

PHP Se encontró el error Severidad: Aviso mensaje: Falta el argumento 1 de Sitio :: torta() Nombre del archivo: controladores/site.php Línea Número: 16 – jpoles1

Respuesta

18

En su controlador, haga lo siguiente:

function cake($var = null) { 
    // your other code here 
} 

Cuando $var no está presente en la URL, que se establecerá en null y recibirás ningún error.

+0

funciona! : D Gracias – jpoles1

+0

Genial - Me alegro :) Si mi respuesta fue positiva, ¿te importaría aceptarla como la respuesta correcta? –

+1

Debería establecerlo en 'null' en lugar de' false', ya que 'false' es un valor válido real. – Chetan

1

Para explicar por qué funciona la respuesta de Colin: El problema que tenía, era que no había ningún valor predeterminado para esa función de controlador. En php, la creación de un valor predeterminado para un parámetro de función se realiza asignándole un valor en la definición de la función ($ var = false). Ahora cuando se llama a la función cake() sin parámetro, establecerá $ var en false de manera predeterminada.

Cuestiones relacionadas