Buenos días a tod@s,
al cambiarme de xampp al servidor contratado este script ya no me funziona. Devuelve una pagina en blanco.
Alguien me puede echar una mano?
Gracias
Código PHP:
<?php
/*
comando SQL de instalación:
CREATE TABLE IF NOT EXISTS `catalog` (
`codigo` int(6) unsigned zerofill NOT NULL,
`descripcion` varchar(45) NOT NULL,
`precio` float unsigned NOT NULL,
`iva` int(10) unsigned NOT NULL,
`pvf` float unsigned NOT NULL,
`familia` int(4) unsigned zerofill NOT NULL,
PRIMARY KEY (`codigo`),
KEY `descripcion` (`descripcion`,`familia`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `art_desc` (
`codigo` int(6) unsigned zerofill NOT NULL,
`descripcion` varchar(45) NOT NULL,
`precio` float NOT NULL,
`iva` int(10) unsigned NOT NULL,
PRIMARY KEY (`codigo`),
KEY `producto` (`descripcion`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `clientes` (
`codigo_cliente` int(4) unsigned zerofill NOT NULL,
`nombre` varchar(80) NOT NULL,
`userid` varchar(80) NOT NULL,
`password` varchar(80) NOT NULL,
PRIMARY KEY (`codigo_cliente`),
KEY `userid` (`userid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
*/
include('header.php');
session_start();
/* //TODO: Inicia sesion
if (!isset($_SESSION['autenticado'])) {
//header('Location: index.php');
//exit();
}
else*/{
if (count($_FILES) == 0) { //muestra plantilla subir archivo
?>
<form method="post" action="actualizar.php" enctype="multipart/form-data">
<label><span>ACTUALIZAR CATALOGO (catalog-A-B.txt)</span><input name="file" type="file" required="required" accept="text/plain"></label>
<input name="opt" type="hidden" value="catalog" />
<input type="submit" value="Subir">
</form>
<form method="post" action="actualizar.php" enctype="multipart/form-data">
<label><span>ACTUALIZAR CLIENTES (claves-clientes-web-A-B.txt)</span><input name="file" type="file" required="required" accept="text/plain"></label>
<input name="opt" type="hidden" value="clientes" />
<input type="submit" value="Subir">
</form>
<?php }
else{
if ($_FILES["file"]["error"] > 0)
echo "Error: " . $_FILES["file"]["error"] . "<br />";
else
{
$lines = file($_FILES["file"]["tmp_name"]); //array con 1 producto por linea
include('config.php'); //acceso a la base de datos
$mysqli = new mysqli($db_host,$db_user,$db_pass,$db_name);
if ($mysqli->connect_errno) {
echo("Error conectando con la base de datos: {$mysqli->connect_error}");
exit;
}
$mysqli->set_charset("utf8");
$mysqli->query("SET AUTOCOMMIT=0;");
$mysqli->query("START TRANSACTION;");
if ($_POST['opt'] == 'catalog') {
$mysqli->query("TRUNCATE TABLE catalog");
foreach ($lines as $line) {
$codigo = intval(substr($line, 0, 6));
$descripcion = $mysqli->real_escape_string(rtrim(substr($line, 6, 45)));
$precio = floatval(substr($line, 51, 6));
$iva = intval(substr($line, 59, 2));
$pvf = floatval(substr($line, 65, 6));
$familia = intval(substr($line, 72, 4));
$grupo = substr($line, 75, 1);
$mysqli->query("INSERT INTO catalog (codigo, descripcion,precio,iva,pvf,familia,grupo) VALUES ($codigo, '$descripcion',$precio,$iva,$pvf,$familia,'$grupo');");
}
}
else { //claves_clientes.txt
$mysqli->query("TRUNCATE TABLE clientes");
foreach ($lines as $line) {
$datos = split('\?', $line);
$codigo = intval($datos[0]);
$nombre = $mysqli->real_escape_string(trim($datos[1]));
$userid = $mysqli->real_escape_string(trim($datos[2]));
$password = $mysqli->real_escape_string(trim($datos[3]));
$grupo = $mysqli->real_escape_string(trim($datos[4]));
$mysqli->query("INSERT INTO clientes (codigo_cliente, nombre,userid,password,grupo) VALUES ($codigo, '$nombre','$userid','$password', '$grupo');");
}
}
if ($mysqli->query("COMMIT;") === TRUE)
{
//TODO: Muestra mensaje actualización realizado con exito?>
<p>Base de Datos actualizada</p>
<?php }
else
{
//TODO: Muestra mensaje fallo en la actualización
printf("Error: %s\n", $mysqli->error);
}
}
}
}
?>