Citar
index.php <- main.php <- +showContent()+ %view%.php
Bien, es algo simple, tengo un index.php que incluye una pagina (main.php) que es la estructura de la web y esta a su vez incluye paginas "views" mediante una funcion (showContent()) creada en index.php y llamada en main.php, una de estas paginas "views" es login.php y es donde esta el form con el input.
Pero el problema es este, cuando le doy al boton login (o register que tampoco funciona) no pasa nada y en la consola del navegador me aparecen los siguientes errores:
Citar
ReferenceError: regformhash is not defined register:1
ReferenceError: formhash is not defined login:1
ReferenceError: formhash is not defined login:1
Esto quiere decir que los archivos .jscript no estan siendo incluidos... Y es extraño porque los css y php script si que funcionan, esos archivos si que son incluidos.
Las ruta estan todas bien, se incluyen desde la raiz (desde htdocs).
Pero lo más extraño de todo, es que cada link de navegacion que le doy, me sale otro error en la consola:
Citar
SyntaxError: invalid regular expression flag b forms.js:31
y esto es lo que hay en la linea 31:
Código
// Check the username - regformhash() re = /^\w+$+/b; // esta es la linea 31
Ahora, ese error indica que si esta incluyendo los jscripts, pero que por alguna razón la funcion no se esta leyendo:
login.php
Código
Los scripts estan bien y no han sido modificados, porque antes de crear el sistema de includes dinamicos todo funcionaba perfectamente, se podian crear usuarios y loguearse.
Para que lo veais:
La primera función de forms.js (la otra es regfromhash)
Código
function formhash(form, password) { // Create a new element input, this will be our hashed password field. var p = document.createElement("input"); // Add the new element to our form. form.appendChild(p); p.name = "p"; p.type = "hidden"; p.value = hex_sha512(password.value); // Make sure the plaintext password doesn't get sent. password.value = ""; // Finally submit the form. form.submit(); }
El otro jscript es sha512.js que esta en la misma carpeta y se incluye con la misma ruta que form.js
Estoy teniendo otros problemas similares y al parecer los includes no se incluyen en los includes.... o algo asi, por ejemplo, en una pagina cualquiera quiero hacer una consulta a la db y funciona bien durante un tiempo, hasta que un dia necesito agregar un include o cambiarlo, entonces ya da error porque la conexion a la db no existe (que se hace en otro archivo). Entonces db_connect.php se incluye en functions.php y este se incluye en los demas archivos y con 1 solo include se incluyen varios archivos. index.php incluye functions.php incluye db_connect.php pero index.php no es capaz de incluir db_connect.php.... o lo incluye cuando le da la gana, es un lio
¿Hay alguna manera de arreglar esto?
Gracias!
Edito: Solucionado, habia que quitar el ultimo + y b del jscript