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 Comentarios

  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)

Dejar respuesta

Please enter your comment!
Please enter your name here