Foros del Web » Programando para Internet » PHP »

cambio de version en php afecta todos mis script!!!urgente

Estas en el tema de cambio de version en php afecta todos mis script!!!urgente en el foro de PHP en Foros del Web. hola maestros mi hosting tenia la version php 4.1.x y todos mis script funcionaban bien , pero hoy paso a la version 4.3.3 y ningun ...
  #1 (permalink)  
Antiguo 08/10/2003, 09:27
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
cambio de version en php afecta todos mis script!!!urgente

hola maestros mi hosting tenia la version php 4.1.x y todos mis script funcionaban bien , pero hoy paso a la version 4.3.3 y ningun script me funciona todos me marcan algun tipo de error , alguien sabe porque o me mejor dicho como solucionar eso..


gracias,
  #2 (permalink)  
Antiguo 08/10/2003, 09:33
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Si te pone mensajes de error, podrias poner alguna de ejemplo.

Pero probemos lo mas comun. ¿Usas $_GET o $HTTP_GET_VARS para coger los valores pasados por la URL? ¿Y $_POST o $HTTP_POST_VARS para los de los formularios? Si la respuesta es no, que usabas $nombre_variable, revisa el estado del register_globals en el php.ini o en la informacion de phpinfo(). Y busca en el manual y en estos foros los efectos de esa directiva (en una de las primeras FAQs se comenta algo).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 08/10/2003, 10:00
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
les voy a dar ejemplos de errores

<td width="51%"><font face="Arial, Helvetica, sans-serif" size="2"> REINGRESAR LA PATENTE:</font></td>
<td width="49%">
<input name=patente value="<? ECHO $patente;?>"> /*linea 14 */
<p>Selecciona_una_imagen</p>

este parte del script simple ,me dice

<br /><b>Notice</b>: Undefined variable: patente in <b>/home/httpd/html/nabarro.cl/prueba/subidor.php</b> on line <b>14</b><br /> /* me confunde eso que dice indefinida variable patente ¿como la defino? */

-los register glonbals estan en on
saludos


edicion:


me estoy dando cuenta que todo cae por el famoso
ej.

IF ($boton=="BUSCAR ARRIENDOS PROPIEDADES") /*linea 62 */
{




Notice: Undefined variable: boton in 62


gracias...


Última edición por mveraa; 08/10/2003 a las 10:06
  #4 (permalink)  
Antiguo 08/10/2003, 10:24
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
ahora si me voy al plano de las sessiones pasa esto

Notice: A session had already been started - ignoring session_start() in /home/httpd/html/NN.cl/prueba/session.php on line 6
session:2c45c23361ef9fe75167f07b0acdf4f0
la session fue destruida


<?php
session_name('s');
$v1="user";
$v2="pass";
session_register($v1,$v2);
session_start(); /* aqui marca el error ,pero si inabilito esta linea el error desaparece */

echo "session:".session_id();

if (session_destroy())
{
echo "<br>la session ".session_id()." fue destruida";
}

?>

saludos , bueno espero me orienten para saber que diablos causo esto en mis script , gracias...

nota al ver mi configuracion Directive Local Value Master
session.auto_start Off Off esto es normal o es un error de mi hosting en dejarlo asi... o acaso es ya no seria necesario declararla...

Última edición por mveraa; 08/10/2003 a las 10:41
  #5 (permalink)  
Antiguo 08/10/2003, 10:35
Nok
 
Fecha de Ingreso: abril-2001
Mensajes: 302
Antigüedad: 16 años, 7 meses
Puntos: 0
Hola, el problema es es error_reporting(), te esta dando Notice, que en realidad no son errores realmente.
Para solucionarlo utiliza la funcion de php error_reporting() o si puedes cambia en php.ini y chequea el manual como hacer para que solo te indique errores y warnings y no notice.

Saludos.
Nok
__________________
La casa de Noktemplate.
Zonaphp.com - Php en español.

¿Que esperas de NokTpl 2? Deja tu comentario.

Blog
Mas o menos asi .
  #6 (permalink)  
Antiguo 08/10/2003, 11:06
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 16 años, 1 mes
Puntos: 5
Para evitar los notifices seria:

Código PHP:
error_reporting(E_ALL &~E_NOTICE); 
De todas maneras, modificando directivas del php.ini evitaras esa serie de errores.
__________________
Usuario registrado de Linux #288725
  #7 (permalink)  
Antiguo 08/10/2003, 12:27
Avatar de mveraa  
Fecha de Ingreso: diciembre-2002
Ubicación: santiago-chilito
Mensajes: 1.895
Antigüedad: 15 años
Puntos: 2
De acuerdo

gracias con el uso de error_reporting estoy reparando el problema ademas pregunte al hoting si puede modificar el phpini

gracias por su orientacion....
  #8 (permalink)  
Antiguo 08/10/2003, 13:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
mveraa ...

Muchas directivas de PHP se pueden configurar con archivos .htacces y eso lo puedes hacer tu mismo. Ademas de que si programases "bien" no tendrías que ver ningun "notice" como los que veias ..

Ejemplo:

Código PHP:
if ($algo=="nose"){
// hacer algo

Suponiendo que esa variable $algo llegue al script por el URL (sería metodo GET) .. Con configuraciones de error_reporting como las que tiene actualmente tu servidor, veras esos "NOTICE" que no hacen más que avisarte que NO está definida esa variable.

En tal caso .. deberías programar ese "IF" asi:

Código PHP:
if (isset($_GET['algo'])){
  
//usas tu $_GET si está definido ...
  
echo $_GET['aglo'];

Los arrays supergloables ($_GET .. etc) están disponibles desde PHP 4.1.x (hace más de un año o casi dos) ... En las FAQ's de este foro tienes una FAQ (la 2ª si mal no recuerdo) al respecto ...

En definitiva .. CAMBIA tu forma de programar .. por lo menos para los nuevos scripts/aplicaciones que hagas y ves pensando en re-escribir el código de las que ya uses.

------

En cuanto al tema de sesiones ...

<?php
session_name('s');
$v1="user";
$v2="pass";
// session_register($v1,$v2); <--- ESTO NO CORRECTO .. las variables de sesión se registran una vez inicia su uso con session_start()

session_start(); /* aqui marca el error ,pero si inabilito esta linea el error desaparece */

session_register($v1,$v2); <--- AQUí .. despues de session_start() puedes registrar variables de sesión.

echo "session:".session_id();

if (session_destroy())
{
echo "<br>la session ".session_id()." fue destruida";
}

?>

Y .. por tu seguridad .. USA los arrays superglobales $_SESSION .. (que igualmente funcionan desde PHP 4.1.x en adelante"!!!!)

URGENTE: Lee esta faq's:
http://www.forosdelweb.com/showthrea...988#post238988
http://www.forosdelweb.com/showthrea...998#post238998


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 16:04.