Foros del Web » Programando para Internet » PHP »

Problema con Arsys y mi php

Estas en el tema de Problema con Arsys y mi php en el foro de PHP en Foros del Web. Ante todo un saludo a todos de nuevo y perdonad por mi ignorancia. Un amigo me encargo que hiciera unas pequeñas mejoras en una página ...
  #1 (permalink)  
Antiguo 20/12/2012, 02:26
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años
Puntos: 10
Problema con Arsys y mi php

Ante todo un saludo a todos de nuevo y perdonad por mi ignorancia.

Un amigo me encargo que hiciera unas pequeñas mejoras en una página web inclullendo una zona de administracion para usuarios, noticias etc.

Lo he acabado, con wamp server y dreamweaber en mi pc y todo funciona correctamente. La subo a mi espacio en 1&1 y todo correcto. La subo a mi propio servidor con ubuntu y lamp y todo va a las mil maravillas y sin problemas.

El echo es que esta web tiene alojamiento en Arsys, pues bien creo las tablas en la base de datos mysql que me corresponde en Arsys, subo la web y vuala no puedo entrar en la zona de administración.
Tengo una platilla en la que hay un formulario de acceso que a su vez aparecera en el index.php.

Bueno voy al index.php, intento entrar a travez del formulario al área de administración y me quedo en el propio index.php y con este error:

Warning: session_regenerate_id(): Cannot regenerate session id - headers already sent in /var/www/vhost/unedlapalma.es/home/html/index.php on line 98 Warning: Cannot modify header information - headers already sent by (output started at /var/www/vhost/unedlapalma.es/home/html/Connections/conex_db_unedlapalma.php:5) in /var/www/vhost/unedlapalma.es/home/html/index.php on line 106

index.php

Código PHP:
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
  
session_start();
}
$loginFormAction $_SERVER['PHP_SELF'];
if (isset(
$_GET['accesscheck'])) {
  
$_SESSION['PrevUrl'] = $_GET['accesscheck'];
}
if (isset(
$_POST['usuario'])) {
  
$loginUsername=$_POST['usuario'];
  
$password=$_POST['password'];
  
$MM_fldUserAuthorization "nivel";
  
$MM_redirectLoginSuccess "admin/index.php";
  
$MM_redirectLoginFailed "admin/error_acceso.php";
  
$MM_redirecttoReferrer false;
  
mysql_select_db($database_conex_db_unedlapalma$conex_db_unedlapalma);
 
  
$LoginRS__query=sprintf("SELECT usuario, password, nivel FROM tbl_usuarios WHERE usuario=%s AND password=%s",
  
GetSQLValueString($loginUsername"text"), GetSQLValueString($password"text")); 
 
  
$LoginRS mysql_query($LoginRS__query$conex_db_unedlapalma) or die(mysql_error());
  
$loginFoundUser mysql_num_rows($LoginRS);
  if (
$loginFoundUser) {
 
    
$loginStrGroup  mysql_result($LoginRS,0,'nivel');
 
 if (
PHP_VERSION >= 5.1) {session_regenerate_id(true);} else   {session_regenerate_id();}
    
//declare two session variables and assign them
    
$_SESSION['MM_Username'] = $loginUsername;
    
$_SESSION['MM_UserGroup'] = $loginStrGroup;       
    if (isset(
$_SESSION['PrevUrl']) && false) {
      
$MM_redirectLoginSuccess $_SESSION['PrevUrl']; 
    }
    
header("Location: " $MM_redirectLoginSuccess );   
  }
  else {
    
header("Location: "$MM_redirectLoginFailed );
  }
}
?> 
Línea 98 if (PHP_VERSION >= 5.1) {session_regenerate_id(true);} else
Línea 106 header("Location: " . $MM_redirectLoginSuccess );

conex_db_unedlapalma.php

Código PHP:
<?php if (!isset($_SESSION)) {
  
session_start();
}
?>
<?php          
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_conex_db_unedlapalma "ip de arsys";
$database_conex_db_unedlapalma "nombre db arsys";
$username_conex_db_unedlapalma "usuario db arsys";
$password_conex_db_unedlapalma "pass dd arsys";
$conex_db_unedlapalma mysql_pconnect($hostname_conex_db_unedlapalma$username_conex_db_unedlapalma$password_conex_db_unedlapalma) or trigger_error(mysql_error(),E_USER_ERROR); 
?>
<?php 
if (is_file("includes/funciones.php")) {
 
   include(
"includes/funciones.php"); 
}
else {
 
   include(
"../includes/funciones.php");  
}
?>
Línea 5 con error ????? <?php

He desactivado los errores en el panel de control de arsys no me los da pero el formulario de acceso se queda en el index.php sin el error pero no puedo acceder a /admin/index.php que es el index de el área de adminstración.

Como dije me fonciona bien en todos los servers que lo he probado pero no en Arsys.

¿Alguna idea? he mirado todo, suprimir espacion al inicio documento y final, etc etc y no consigo que furule en arsys.

Como siempre un afectuoso saludo y muchas gracias de antemano.

Manyblue
  #2 (permalink)  
Antiguo 20/12/2012, 04:39
 
Fecha de Ingreso: abril-2012
Mensajes: 590
Antigüedad: 12 años
Puntos: 58
Respuesta: Problema con Arsys y mi php

Creo que es problema de BOM o marca de bytes. Abre los ficheros con Notepad++ por ejemplo y elige "UTF-8 sin boom" y guardalos así y vuelve a probar.

ESto suele pasar si editas los ficheros con el bloc de notas o similar. Que mete unos caracteres al inicio del fichero, invisibles, que indican la codificación creo. Sino hay headers no pasa nada pero si el php tiene headers te dará ese error.
  #3 (permalink)  
Antiguo 20/12/2012, 07:18
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años
Puntos: 10
Respuesta: Problema con Arsys y mi php

Que tengo que guardar todos los ficheros de la web con notepad ++ en UTF-8 sin Bom ??
He guardado el index.php asi y nada me sigue dando el error.

las plantillas de administracon y publica estan guardadas con dream weaber en:

XHTML 1.0 Transicional
UTF-8
Sin barrar la casilla: Incluir firma Unicode BOM

De hecho abro cualquier documento de la web con notepad ++ y se ve en codificacion:
Unicode UTF-8 sin BOM

Tendre que cambiar todo a ISO ??

Un saludo y gracias por tu pronta respuesta
  #4 (permalink)  
Antiguo 20/12/2012, 13:56
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años
Puntos: 10
Respuesta: Problema con Arsys y mi php

Sustituí esto:

session_start();

Por esto otro:

ob_start();


Em la conexion del archivo de conexion y index.php.
Ahora no me da errores pero cuando intento entrar con el user y pass correcto me manda a la pagina de error, vuelvo a meter el el form user y pass y ya me deja entrar a la zona de administracion.

Pero todo esto pasando por la pagina de error ??

El problema es la forma de abrir la sesion no .......??

Alguna sugerencia más ???

Gracias de antemano

Última edición por manyblue; 20/12/2012 a las 14:05
  #5 (permalink)  
Antiguo 20/12/2012, 14:17
Avatar de manyblue  
Fecha de Ingreso: marzo-2008
Mensajes: 329
Antigüedad: 16 años
Puntos: 10
Respuesta: Problema con Arsys y mi php

PROBLEMA SOLUCIONADO:

conex_db_unedlapalma.php

Código PHP:
<?php if (!isset($_SESSION)) {
  
session_start();
}
?>
<?php          
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_conex_db_unedlapalma "ip de arsys";
$database_conex_db_unedlapalma "nombre db arsys";
$username_conex_db_unedlapalma "usuario db arsys";
$password_conex_db_unedlapalma "pass dd arsys";
$conex_db_unedlapalma mysql_pconnect($hostname_conex_db_unedlapalma$username_conex_db_unedlapalma$password_conex_db_unedlapalma) or trigger_error(mysql_error(),E_USER_ERROR); 
?>
<?php 
if (is_file("includes/funciones.php")) {
 
   include(
"includes/funciones.php"); 
}
else {
 
   include(
"../includes/funciones.php");  
}
?>
y lo deje así:

Código PHP:
<?php if (!isset($_SESSION)) {
  
ob_start();
}
?>
<?php          
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_conex_db_unedlapalma "ip de arsys";
$database_conex_db_unedlapalma "nombre db arsys";
$username_conex_db_unedlapalma "usuario db arsys";
$password_conex_db_unedlapalma "pass dd arsys";
$conex_db_unedlapalma mysql_pconnect($hostname_conex_db_unedlapalma$username_conex_db_unedlapalma$password_conex_db_unedlapalma) or trigger_error(mysql_error(),E_USER_ERROR); 
?>
<?php 
if (is_file("includes/funciones.php")) {
 
   include(
"includes/funciones.php"); 
}
else {
 
   include(
"../includes/funciones.php");  
}
?>
Se acabaron los problemas de sesión.

Muchisimas gracias por vuestra atención y respuestas. ES DE AGRADECER MUCHISIMO.

Un saludo: manyblue

Etiquetas: arsys, formulario, html, mysql, sql, tabla, variables, usuarios
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 19:02.