
10/09/2003, 13:51
|
 | | | Fecha de Ingreso: enero-2002
Mensajes: 39
Antigüedad: 23 años, 2 meses Puntos: 0 | |
Ya he hecho esto y no me funcionó .... me salia esto:
Access denied for user: 'xxxx@localhost' (Using password: YES)
y no cargaba na de ná... consulté con el soporte del hosting(q es linux por cierto), pensando q a lo mejor necesitaba algún privilegio, me activaron File_priv para mi
usuario así como el lock tables y a probar de nuevo...
The file '/tmp/phptsHpSP' must be in the database directory or be readable
El archivo '/tmp/phptsHpSP ' debe estar en el directorio de base de datos o ser legible por todos
de nuevo fallaba .... pero leyendo esto y lo q dice probe a copiar el archivo temporal a una carpeta y cargarlo desde ahí y todo funsioná correctamente:
Este es mi código:
<?
// Código por SkyWalker
// Nota: La carpeta temporal debe exitir en el mismo directorio que el script
$dbhost = "localhost"; // HOST DONDE SE ENCUENTRA LA BASE DE DATOS
$dbuser = "root"; // USUARIO PROPIETARIO DE LA BASE DE DATOS
$dbpass = ""; // CONTRASEÑA DEL USUARIO PROPIETARIO DE LA BASE DE DATOS
$dbname = "eventoSI_V1"; // NOMBRE DE LA BASE DE DATOS
$tabla="tabla"; // INDICAR NOMBRE DE LA TABLA
$conectarbd = mysql_connect ($dbhost, $dbuser, $dbpass);
@mysql_select_db($dbname);
if ($file1_size < 500000) {
if ($file1_type=="application/octet-stream") {
$nuevoarchivo = "temporal.csv";
copy ($file1,"temporal/$nuevoarchivo");
// Nos dice la ruta del script
$ruta = str_replace ("estescript.php","",$SCRIPT_FILENAME);
$ficheroruta = $ruta."temporal/"$nuevoarchivo;
// Esto para Linux
$fichero = str_replace("\\", "\\\\", $ficheroruta);
// Para Windows
//$fichero = str_replace("/", "\\\\", $ficheroruta);
$sql = "LOAD DATA INFILE '$fichero' INTO TABLE ".$tabla." FIELDS TERMINATED BY ';' ENCLOSED BY '\"' ESCAPED BY '\\\\' LINES TERMINATED BY '\\n'";
$query = mysql_query($sql,$conectarbd);
$error=mysql_error();
ECHO"$sql<BR>$error";
} else { ECHO"No es un archivo válido.";}
} else ( ECHO"Tamaño no válido.";)
?>
Saludos SkyWalker
Última edición por SkyWalker; 10/09/2003 a las 13:53 |