Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

297
Vistas
PHP reemplaza una fila en csv funciona bien en mi localhost pero no reemplaza la fila cuando se carga en cpanel.

Hola, soy relativamente nuevo en PHP y estaba tratando de reemplazar una fila en un archivo csv, no encontré una solución óptima, así que inventé un script (una solución alternativa) que se adapta a mis necesidades por el momento hasta que entiendo mejor PHP

Lo probé en mi localhost usando XAMPP y todo funcionaba bien, estaba reemplazando la fila según lo previsto, pero cuando cargué los archivos en mi cpanel dejó de reemplazarse y, en cambio, sigue la ruta normal y escribe la fila en una nueva línea.

este es mi codigo:

 $fileName = 'Usecase.csv'; //This is the CSV file $tempName = 'temp.csv'; $inFile = fopen($fileName, 'r'); $outFile = fopen($tempName,'w'); while (($line = fgetcsv($inFile)) !== FALSE) { if(($line[0] == "$fin") ) //Here I am checking the value of the variable to see if same value exists in the array then i am replacing the array which will be later written into the csv file { $line = explode (",", "$tempstr10"); $asd=$asd+1; //this is the variable that i defined and assigned value 0 in the top most section, this is used later in the code } fputcsv($outFile, $line ); } fclose($inFile); fclose($outFile); unlink($fileName); rename($tempName, $fileName); if( $asd==0 && filesize("Usecase.csv")>0) // here its checking if the value is 0 , if value is 0 then that means the above code didnt execute which means the value wasnt present in the file , this is to avoid writing the same string again into the file { file_put_contents("Usecase.csv", "$tempstr10\r\n",FILE_APPEND | LOCK_EX); } if( $asd==0 && filesize("Usecase.csv")==0) { file_put_contents("Usecase.csv", "$tempstr10\r\n",FILE_APPEND | LOCK_EX); }

y como mencioné anteriormente, está funcionando en el localhost pero no en el cpanel, ¿alguien puede señalar si algo está mal con el código? o si es otra cosa? gracias

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

El problema más probable es que su versión local de PHP o su configuración local de PHP sea diferente de la que hay en el servidor.

Por ejemplo, fopen es una función que se puede desactivar en algunos servidores compartidos.

Puede verificar esto creando un archivo php con los siguientes contenidos:

 <?php phpinfo();

Luego visite ese archivo PHP en su navegador. Haga esto tanto para su entorno de desarrollo local como para su servidor cPanel para comparar la configuración e identificar las diferencias que pueden estar contribuyendo al comportamiento diferente.

También debe comprobar los registros de errores. Se pueden encontrar en varios lugares diferentes dependiendo de cómo su proveedor de alojamiento haya configurado las cosas. Si no puede encontrarlos, deberá preguntarle a su proveedor de alojamiento para saber con seguridad dónde están los registros de errores.

Las ubicaciones típicas son:

  • El ícono de "Errores" en cPanel
  • Un archivo llamado "error_log" en una de las carpetas de su sitio. A través de ssh o el ícono de Terminal en cPanel, puede usar este comando para encontrar esos archivos: find $PWD -name error_log
  • Si su servidor está configurado para usar PHP-FPM, el registro de errores de php se encuentra en ~/logs/yourdomain_tld.php.error.log

También debería considerar activar el informe de errores para la secuencia de comandos poniendo esto en la parte superior. Tenga en cuenta que esto solo debe usarse temporalmente mientras está depurando activamente la aplicación. Dejar este tipo de salida de depuración activada podría exponer detalles sobre su aplicación que pueden provocar riesgos de seguridad adicionales.

 <?php ini_set('display_startup_errors', 1); error_reporting(E_ALL); ... Your code here ...
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda