php cambiar el nombre de carpetas con archivos en

Estoy tratando de escribir un script en PHP para restablecer mi id en una base de datos. Pero tengo que cambiar el nombre de los directorios en mis tablas a las que tienen el mismo id.

Así que trate de usar la función de renombrar, pero no pude.

Siempre tengo «No existe el fichero o el directorio». Puedo probar la ruta absoluta o relativa, para cambiar el chmod, el uso de un sueño antes y sí mis carpetas existentes.

Así que me gustaría saber por qué no funciona :

rename('/uploads/photos/'.$old_id.'/', '/uploads/photos/'.$new_id.'/');

Y mis carpetas tienen algunos archivos.

  • reset my ids in a database – no suele ser una buena idea. Las claves primarias deben ser extraída a partir de los datos que se refieren – se debe tener relevancia a los datos en sí. Por favor, explique por qué usted necesita hacer esto. Pero la respuesta a la pregunta, trate de rename('uploads/photos/'.$old_id, 'uploads/photos/'.$new_id); con ninguna de avance y retroceso en barras, a menos que usted realmente no tiene un directorio en el sistema de archivos raíz llamada /uploads (que lo dudo)…
  • ¿has probado sin la barra diagonal?
  • Realmente creo que el sistema operativo está en la búsqueda de «uploads» en la carpeta raíz. Trate de usar la ruta completa, por ejemplo: /var/www/uploads/fotos/….
  • Necesito restablecer el id porque tenía 118k resultados y ahora sólo 200, su limpio identificadores y direcciones url. Voy a probar sin el líder de barras y he probado sin la cola y fue el mismo.
  • Como ya se ha escrito por DaveRandom, identificación de valores deben modificarse NUNCA. Un identificador es un permanente referencia a un registro.
  • Ah Ah sin los guiones iniciales y finales tengo este mensaje : «el Directorio no está vacío». Entonces, ¿cómo puedo solucionar eso ?
  • Hola, trate de revisar estas respuestas: stackoverflow.com/questions/9043193/php-rename-failure

InformationsquelleAutor | 2012-08-17

2 Kommentare

  1. 3

    sólo el uso de comandos de linux en php:

    exec("mv $oldname $newname");
    • EXEC no es una buena práctica. necesitamos llanura de comandos
    • A veces es la mejor solución.
  2. 2

    1 – Revisión de permisos de directorio padre. ( photos ) Debe ser modificable por el usuario de php.

    2 – asegúrese de que el camino es aceptar /uploads/photos/... (Su primera barra significa que es una ruta de acceso absoluta del directorio raíz)

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea