Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/02/2017, 10:54
melkart239
 
Fecha de Ingreso: noviembre-2014
Ubicación: Madrid
Mensajes: 81
Antigüedad: 9 años, 5 meses
Puntos: 1
Php y mysql en servidor remoto. Antes funcionaba. Ahora no. No pasa de la línea 1.

Saludos.
Llevo toda la semana peleándome con este problema y tras reducirlo casí al absurdo sigo sin saber cuál es la causa. Os cuento.
Tengo alojada una base de datos en un servidor remoto de pago. Funcionaba hasta que un día me dí cuenta de que no codificaba bien los acentos y las eñes. A su vez algunas de las funciones, como por ejemplo, modificar un registro existente, también dejaron de funcionar.
Así que pensé: primero soluciona lo de las codificaciones y luego veremos el código a ver que pasa.
Lo que cambié fué lo siguiente:
- tanto en la base de datos como en las páginas puse codificación UTF-8
- las páginas web las tenía en XHTML 1.0 Transitional, las pasé a HTML5
- de paso corregí un error que se me escapó de haber puesto la línea de enlace con los estilos fuera de la etiqueta head
No toqué ninguna línea de código.
Tras esto ya no conseguí conectar con el servidor. Siempre me daba error en la línea 1.
Comparé el código php de la nueva página con el de la antigua por si por error había cambiado algo. Iguales.
Ya ni recuerdo la cantidad de pruebas que hice para tratar de detectar el problema.
Al borde de cortarme las venas, decidí volver a poner la antigua y estudiar poco a poco qué podía pasar.
Sorpresa, la antigua funcionaba. ¿Pero si sólo cambié html y codificaciones?
Empecé de cero. Sencillito. Una página index con el formuario de login que con post te lleva a página validación php. No funciona.
Dejo la página de validación pelada. Solo conexión a la base de datos. Tampoco.
Y aparece el odioso mensaje que no pasa de la línea 1:

Fatal error: Call to undefined function phpmysql_connect() in /home/...../...../..../validar1.php on line 1

Aquí el código de la página index.html
Código:
<form class="formulario" action="validar1.php" method="post">
<fieldset>
 <legend>Identifícate </legend>
  <div class="divform">
   <label> Usuario:</label>
   <input class="cajaform" name="nome_us" type="text" />
  </div>
  <div class="divform">
   <label>Password:</label>
   <input class="cajaform" name="pass_us" type="password" />
  </div>
  <div>
   <input class="botform" name="iniciar" type="submit" value="Iniciar Sesión" />
  </div>
</fieldset>
</form>
Aquí el código de la página validación1.php
Código:
<?php
mysql_connect('localhost','miusuario','mipass') or die("Error al conectar " . mysql_error());
mysql_select_db('fpgrafic_fcts') or die ("Error al seleccionar la Base de datos: " . mysql_error());
?>
Tras esto sólo me quedaba pensar dos cosas:
1) El código php es antiguo y puede estar "deprecated". Entonces ¿por qué sí funciona la página inicial antigua con el mismo código? Creo que no es la razón
2) Te estas equivocando en los datos de conexión. Son los mismos que la antigua.
Así que antes de llamar a mi proveedor y contarle mis quitas me gustaría saber algo para armarme de argumentos. O si es una tontería no hacer el ridículo.
Muchas gracias