No veo mi bbdd ni me refresca mis cambios de código. (SERED)

Buenas tardes.
Inicialmente decir que no tengo absolutamente nada que objetar a SERED. La predisposición y el soporte que me ha dado ha sido perfecto aunque el problema que tengo debe de ser cosa mía.
He subido unos scripts a SERED a la vez que he creado una bbdd mysql y tengo un par de problemas. El primero es que solo se realiza mi primera select a la bbdd, consecuentemente la primera conexión es correcta, pero a partir de ese momento ya no llego a volver a conectarme aún a pesar de llamar a la misma función del mismo script para realizar el resto de conexiones.
Mi segundo problema es que después de haber subido unos cambios de código, lo que me funciona en local no consigo hacerlo funcionar en el servidor. He comprobado que los scripts ya modificados están en el servidor, pero como digo el funcionamiento no me lo hace.
Para mi primer problema no tengo pregunta, simplemente no tengo ni idea de porque no me realiza mas que la primera conexión, si alguien tiene algo que me pueda orientar/ayudar se lo agradecería a la vez que posiblemente me aliviase el dolor de cabeza (esto es broma), y para el segundo problema... ¿tengo que reiniciar algo cuando subo nuevos scripts o modificaciones al servidor?, ¿podéis igualmente ayudarme/asesorarme también sobre esta incidencia?
Estoy buscando por internet pero o no se con que texto buscar esto o no encuentro nada.
Muchas gracias anticipadas y saludos.
Ya te digo 2 cosas:
Sin algun código no podemos hacernada (O la URL)
Y:
NO ES NECESARIO REINICIAR SERVIDOR tras subir "scripts" de php
Muchas gracias por tu pronta respuesta.

¿Puede ser que no me funcione porque sea un php con javascript?, es decir, tengo un php con un formulario html y las validaciones de este formulario están hechas con javascript.
Adjunto el código:

<?php

include ('aprendetu_sc_fns.php');
// el carrito de compra necesita sesiones, así que iniciamos una
@session_start();

?>

<LINK rel="stylesheet" type="text/css" href="cuerpo.css">

<script>
function validar(){
if(document.formulario.action == "http://localhost/aprendetu/crearUsuario.php"){
if (document.formulario.usuario.value == ""){
alert("Debe ingresar un usuario"); //mensaje a la pantalla
document.formulario.usuario.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.contrasena.value == ""){
alert("Debe ingresar una contraseña"); //mensaje a la pantalla
document.formulario.contrasena.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.rcontrasena.value == ""){
alert("Debe confirmar la contraseña"); //mensaje a la pantalla
document.formulario.rcontrasena.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.contrasena.value != document.formulario.rcontrasena.value){
alert("Las contraseñas no son iguales"); //mensaje a la pantalla
document.formulario.contrasena.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.mail.value == ""){
alert("Debe ingresar un mail"); //mensaje a la pantalla
document.formulario.mail.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.nombre.value == ""){
alert("Debe ingresar un nombre"); //mensaje a la pantalla
document.formulario.nombre.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.apellidos.value == ""){
alert("Debe ingresar los apellidos"); //mensaje a la pantalla
document.formulario.apellidos.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
if (document.formulario.edad.value == ""){
alert("Debe ingresar una edad"); //mensaje a la pantalla
document.formulario.edad.focus(); //el puntero del mouse queda en nombre
return false; //devolvemos un cero para dejar de validar
}
}
return true;
}
</script>


<html>
<body>
<table border=3 width="28%">
<form action="" method="POST" name="formulario" id="formulario" onsubmit="return validar();">
<tr>
<td>Usuario:</td><td><input type="text" name="usuario" size="40"></td>
<td>
</tr>
<tr>
<td>Contraseña:</td><td><input type="password" name="contrasena" size="40"></td>
</tr>
<tr>
<td>Repite contraseña:</td><td><input type="password" name="rcontrasena" size="40"></td>
</tr>
<td>Mail:</td><td><input type="text" name="mail" size="40"></td>
</tr>
<tr>
<td>Nombre:</td><td><input type="text" name="nombre" size="40"></td>
</tr>
<tr>
<td>Apellidos:</td><td><input type="text" name="apellidos" size="40"></td>
</tr>
<tr>
<td>Edad:</td><td><input type="text" name="edad" size="40"></td>
</tr>
<tr height=40px>
<td></td><td align=center><input type='image' src='imagenes/aceptar.png' height = 48 name='aceptar' value='Aceptar' onclick="this.form.action='crearUsuario.php'"/>
<input type='image' src='imagenes/volver.png' name='volver' value='Volver' onclick="this.form.action='formularioLogin.php'"/>
</td>
</tr>
</form>
</table>
</body>
</html>

Es posible que no fuese necesario hacerlo en un php, pero independientemente de esto la pregunta es si por esta razón puede dar problemas. Entiendo que no porque en local me funciona perfectamente.
Gracias y saludos.
Creo que al código que te referias era al de las conexiones.
La primera función me la procesa perfectamente, pero a partir de la segunda no consigue realizar la consulta a la bbdd. Todas realizan la conexión accediendo a la misma función:
function db_connect()
{
$result = @mysql_pconnect("localhost", "root", "1234");
if (!$result)
return false;
if (!@mysql_select_db("aprendet_bdaprendetu"))
return false;

return $result;
}

function get_cursos()
{
// Petición a la base de datos de una lista de cursos
$conn = db_connect();
$query = "select idcurso, desccurso
from cursos";
//@mysql_query("SET NAMES utf8");
$result = @mysql_query($query, $conn);
if (!$result)
return false;
$num_cursos = @mysql_num_rows($result);
if ($num_cursos ==0)
return false;
$result = db_result_to_array($result);
mysql_close($conn);
return $result;
}

function get_curso_name($idcurso)
{
// Petición a la base de datos del nombre de un curso id
$conn = db_connect();
$query = "select desccurso
from cursos
where idcurso = $idcurso";
//mysql_query("SET NAMES utf8");
$result = @mysql_query($query, $conn);
if (!$result)
return false;
$num_cursos = @mysql_num_rows($result);
if ($num_cursos ==0)
return false;
$result = mysql_result($result, 0, "desccurso");
mysql_close($conn);
return $result;
}
$query = "select desccurso
from cursos
where idcurso = $idcurso";
¿Lo tienes así en el mismo código?
Acabo de comprobar que eliminando la igualdad del where me presenta todos los que hay, con lo que no es que no acceda a la bbdd, el problema es que no entiende el valor que le paso como parámetro y que pongo en el where.
Pero mi pregunta es ¿por qué en local me funciona perfectamente y cuando lo subo al servidor no?, ¿y que puedo hacer?
$query = "select desccurso
from cursos
where idcurso = $idcurso"; 
¿Ponlo en una sola linea y me cunetas ok?
(Tal que asi:)
$query = "select desccurso from cursos where idcurso = '$idcurso'";
PD: Envolví el parámetro entre comillas simples.
No me funciona tampoco.
Es claro que no está reconociendo la variable porque cuando le quito el where y no hago selección si me presenta todos los datos, luego quiere decir que la conexión es correcta.
Es posible que sea correcto como me has comentado pero si te fijas al principio comento que tampoco me reconoce los cambios. Estoy haciendo una validación que en local me la hace perfectamente pero cuando lo subo no y compruebo que están metidos los cambios en el código.
Seguramente es un chorradón, pero me tiene loco...
He probado también con.....

function get_curso_name($idcurso)
{
// Petición a la base de datos del nombre de un curso id
$conn = db_connect();
$query = "select desccurso from cursos where idcurso = '".$idcurso."'";
//mysql_query("SET NAMES utf8");
$result = @mysql_query($query);
if (!$result)
return false;
$num_cursos = @mysql_num_rows($result);
if ($num_cursos ==0)
return false;
$result = mysql_result($result, 0, "desccurso");
return $result;
}
function get_asignaturas($idcurso)
{
// Petición a la base de datos de una lista de asignaturas
$conn = db_connect();
$query = "select idasignatura, descasignatura, idcurso from asignaturas where idcurso = '".$idcurso."'";
//@mysql_query("SET NAMES utf8");
$result = @mysql_query($query);
if (!$result)
return false;
$num_asignaturas = @mysql_num_rows($result);
if ($num_asignaturas ==0)
return false;
$result = db_result_to_array($result);
return $result;
}

....... y tampoco. Si le pongo el valor a pelo si lo hace, pero si le pongo la variable de diferentes formas, parece que no.
Lo dejaré a ver si desconecto y me viene a la mente la tontería.
Gracias y saludos.
Hola.
Aunque he ducho que por hoy lo dejaba, no he podido cortar y ademas se porque no lo estaba presentando.
Lo presenta con las select iniciales, esa que me preguntabas si realmente lo tenía sin envorver entre las comillas. También con las variables envueltas en comillas, como tu me decías, y también con la tercera posibilidad que puesto al final..... y evidentemente el problema no estaba en ninguna de esas posibilidades.
El problema estaba en que NO RECUPERABA EL PARÁMETRO EN EL SCRIPT DE LLAMADA, pero no entiendo porque en local si.
Bueno, como hemos comentado incialmente ha sido una de esas chorradas en las que se pierde un montón de tiempo.
Respecto a la validación del formulario, se te ocurre porque no me hace esta validación en el server y si en local???
Gracias por todo.