PHP - Problema con la nueva actualización de PHP

   
Vista:

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 30/10/2014 17:10:54
Hola. Tengo un gran problema con la reciente actualización de PHP.

Tengo creados varios formularios de contacto que recogen los datos en una base de datos MySql y a la vez me envían la información por correo.

De momento funcionan a la perfección, pero me llegó un mensaje de mi servidor avisándome de que tenía alguna función obsoleta y que ya no está funcionando en PHP5.5. Esta función es mysql_pconnect.

Al sustituirla por mysqli_connect el formulario ya no se carga en el navegador.

Adjunto mis archivos para ver me podéis ayudar a ver cuál es el fallo.

Muchas gracias por adelantado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 30/10/2014 19:45:54
Tienes que adaptar MySQLi a tu código. Te lo he adaptado yo mismo para que te lo estudies, no olvides hacer una copia de seguridad antes de probarlo. Te adjunto los archivos modificados.

pd: No se si los datos de conexión son reales pero si fuera así te aconsejo que los cambies y la próxima vez no los publiques en un sitio publico ya que los puede ver cualquiera.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 09:12:10
Buenos días.

Muchas gracias por su rápida respuesta.

He sustituido el código por el indicado, pero me da el siguiente error:

Fatal error: Call to a member function query() on a non-object in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 40

¿tengo que modificar algo?

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 09:30:07
Estas segura que conectas tal como lo puse?

1
$contacto = new mysqli($hostname_contacto, $username_contacto, $password_contacto);

retoque tanto los archivos de la carpeta connections como los de la carpeta form estas segura que remplazaste ambas?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 09:33:31
Sustituí los archivos directamente por los que me enviaste
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 09:41:46
Vale, vi un error mio, te vuelvo a adjuntar los archivos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 09:54:56
Muchas gracias.

He vuelto a sustituir los archivos, pero ahora no carga el formulario en el navegador, no se visualiza.

Te envío el enlace para que lo veas: http://www.spasei.es/contacto.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 09:50:00
Te lo adjunto de nuevo que vi otro xD
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 10:08:33
Lo siento, sigue sin visualizarse.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 10:13:01
Prueba a poner al comienzo de formulario.php esto: <?php error_reporting(E_ALL); ?> a ver si así tira el error
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 10:17:53
Al poner lo que indicas, me da el siguiente error:

Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 37

Warning: mysqli::query() expects parameter 2 to be long, object given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 39

Warning: mysqli_error() expects exactly 1 parameter, 0 given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 39
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 10:35:21
en formacion.php reemplaza esta linea:

1
$contacto = new mysqli($hostname_formacion, $username_formacion, $password_formacion);


por esta:

1
$contacto = new mysqli($hostname_formacion, $username_formacion, $password_formacion, $database_formacion);


en contacto.php reemplaza esta linea:

1
$contacto = new mysqli($hostname_contacto, $username_contacto, $password_contacto);


por esta:

1
$contacto = new mysqli($hostname_contacto, $username_contacto, $password_contacto, $database_contacto);


en formulario.php y en rrhh.php borra:
1
mysqli_select_db($database_contacto, $contacto);
(en cada archivo hay dos lineas)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 10:46:07
Una vez hechos los cambios, me da este error:


Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 37

Warning: mysqli::query() expects parameter 2 to be long, object given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 39

Warning: mysqli_error() expects exactly 1 parameter, 0 given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 39
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 10:55:33
tanto en formacion.php como en rrhh.php reemplaza esta linea:

1
$Recordset1 = $contacto->query($query_Recordset1, $contacto) or die(mysqli_error());

por esta:

1
$Recordset1 = $contacto->query($query_Recordset1) or die(mysqli_error());

y esta linea:

1
$Recordset3 = $contacto->query($query_Recordset3, $contacto) or die(mysqli_error());

por esta:

1
$Recordset3 = $contacto->query($query_Recordset3) or die(mysqli_error());
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 11:01:26
Ahora me da los siguientes errores


Warning: mysqli_select_db() expects parameter 1 to be mysqli, string given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 37

Notice: Undefined variable: Recordset3 in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 46

Fatal error: Call to a member function query() on a non-object in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 46

Si te parece, para hacerlo algo más sencillo, nos centramos sólo en la conexión: contacto.php y en el form: formulario.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 11:04:28
prueba con esto a ver
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 11:27:48
Ahora no da error pero no se visualiza
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 11:29:23
olvide ponerle <?php error_reporting(E_ALL); ?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 11:38:19
Lo he puesto al principio de forrmulario.php y ahora me sale el siguiente error

Warning: mysqli::query() expects parameter 2 to be long, object given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 37

Warning: mysqli_error() expects exactly 1 parameter, 0 given in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 37
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 11:42:31
vuelve hacer lo que te comente antes que olvide hacerlo yo

reemplaza esta linea:

$Recordset1 = $contacto->query($query_Recordset1, $contacto) or die(mysqli_error());

por esta:

$Recordset1 = $contacto->query($query_Recordset1) or die(mysqli_error());

y esta linea:

$Recordset3 = $contacto->query($query_Recordset3, $contacto) or die(mysqli_error());

por esta:

$Recordset3 = $contacto->query($query_Recordset3) or die(mysqli_error());
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 12:12:08
Bien!!! nos vamos acercando!!!

Ahora ya carga el formulario, pero debajo de él aparece el siguiente error:

Notice: Undefined variable: result in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 158

Warning: Illegal string offset 'formulario' in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160

Notice: Uninitialized string offset: 0 in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 12:59:06
Sustituye <?php echo $result; ?> por <?php if(isset($result)){ echo $result; } ?>

Sobre el error de la linea 160 no sabría decirte ahora si nadie te ayuda me lo investigare a la tarde-noche cuando vuelva.

Si el formulario funciona correctamente y te lleva prisa, para que no se visualice ese error prueba borrando <?php error_reporting(E_ALL); ?>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 31/10/2014 13:12:34
Aunque he puesto lo del borrado Me sigue saliendo:
Warning: Illegal string offset 'formulario' in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160

Notice: Uninitialized string offset: 0 in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160

Revísalo con calma cuando puedas y continuamos.

Muchísimas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de voreno

Problema con la nueva actualización de PHP

Publicado por voreno (42 intervenciones) el 31/10/2014 13:27:02
Para que no se visualicen los errores:
1
<?php error_reporting(0);  ?>
al principio

de todos modos pruebalo a fondo que funcione correctamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Problema con la nueva actualización de PHP

Publicado por elena (23 intervenciones) el 31/10/2014 17:44:29
Vale. Lo probare poniéndolo al inicio y te cuento.
Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Problema con la nueva actualización de PHP

Publicado por Elena (23 intervenciones) el 03/11/2014 17:05:00
Hola. Ya no se visualiza el error al poner como me indicaste <?php error_reporting(0); ?>

Lo que no logro es dar con el motivo del error:

Warning: Illegal string offset 'formulario' in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160

Notice: Uninitialized string offset: 0 in /homepages/9/d339073284/htdocs/wsb5983880201/form/formulario.php on line 160

¿Se te ocurre cuál puede ser el motivo? Adjunto el archivo para que veas cómo quedó
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar