PHP - problemas con directorios almacenados

 
Vista:
sin imagen de perfil

problemas con directorios almacenados

Publicado por eliseo (2 intervenciones) el 03/04/2018 18:22:25
Que tal amigos. tengo el siguiente problema al momento de leer una variable tipo $_FILE.

ya que me esta leyyendo de esta manera.
C:\wamp64\tmp\php8541.tmp

y al momento de realizar una llamada con la sentencia.

1
$import = "LOAD DATA LOCAL INFILE '".$archivotmp."' INTO TABLE sc FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n';

me indica que el archivo no existe(Can't find file 'C:wamp64 mpphp8541.tmp'.)
ya que la forma de que me lee las diraciones es:

C:/wamp64/tmp/php8541.tmp

como pueden observar las diagonales son normal y no invertidas.

hay alguna manera de poder leer la variable de esta manera o poder convertir las diagonales?.

saludos y gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

problemas con directorios almacenados

Publicado por xve (6935 intervenciones) el 03/04/2018 20:58:22
Hola Eliseo, no he desarrollado nunca php sobre Windows, por lo que no se muy bien si es ese el problema, ya que creo que no puede leer directamente de la carpeta C, ya que PHP no tiene acceso a ese directorio.

prueba a poner el archivo dentro del código PHP y llamarlo sin utilzar la C: simplemente con la ruta desde la raiz del VirtualHost del Apache.

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

problemas con directorios almacenados

Publicado por elsieo (2 intervenciones) el 04/04/2018 23:38:14
que tal amigo,

mira lo que sucede es que si me lee la ruta que le de, anteriomente realice una prueba en la cual realice lo siguiente:

1
$import = "LOAD DATA LOCAL INFILE 'c:\folde\archivo.txt' INTO TABLE sc FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n';

el cual no me funciono por las "\" invertida.

despues realice el mismo ejercicio de esta manera:

1
$import = "LOAD DATA LOCAL INFILE 'c:/folder/archivo.txt' INTO TABLE sc FIELDS TERMINATED BY '|' LINES TERMINATED BY '\n';

y de esta manera fue como logre importar mi archivo a la base de datos que le asigne.

como podrás apreciar en mi pregunta, estoy pidiendo de su apoyo ya que el problema que tengo es que de un formulario intento realizar la carga del archivo, por lo cual lo estoy almacenando en una variable de tipo $_FILE['archivo'], pongo codigo de formulario:

1
2
3
<form action="carga.php" method="POST" enctype="multipart/form-data" id="import_form">
<input type="file" name="archivo" onchange="fnc(this.value);" />
<input type="submit" class="btn btn-primary" name="import_data" value="IMPORT">

la verdad he buscado en un buen de fuentes de como lograr que la ruta que se almacena de manera temporal en lugar de que le ponga estas diagonales "\" les pornga las normales "/".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

problemas con directorios almacenados

Publicado por xve (6935 intervenciones) el 05/04/2018 07:02:46
Ahora entiendo tu problemática!!!

Has probado a poner directamente $_FILES["archivo"]["tmp_name"]

No utilizamos Windows, por lo que no puedo probar haber que valor nos devuelve, pero creo que debería de funcionarte!!

Si el problema esta en las barras, puedes utilizar str_replace() para reemplazarlas https://secure.php.net/manual/es/function.str-replace.php
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar