Author Topic: Ändern des Pfades der Bilder in der MYSQL-DB  (Read 12411 times)

0 Members and 1 Guest are viewing this topic.

Offline penum

  • Newbie
  • *
  • Posts: 46
    • View Profile
    • http://www.digicamfotos.de
Ändern des Pfades der Bilder in der MYSQL-DB
« on: October 07, 2002, 09:28:32 PM »
Hi,

ich habe ein kleines Problem.

Ich würde die Bilder ganz normal auf meinem Webspace verwalten.
Nach und nach möchte ich die Thumbs und Bilder auf einem anderen Server auslagern. Wie schaffe ich es auf einfach Weise (nicht von Hand)
den Pfad der Thumbs und Bilder vor den Bildnamen zu bekommen,
damit die Bilder von anderem Webspace geladen werden können.

Das Skript sollte einfach einmal über die Datenbank rauschen und alle Bildnamen um einen Pfad erweitern. (Die Verzeichnissstruktur wäre genauso wie auf meinem Webspace, halt nur eine andere Domain vorweg)

Hat jemand eine Idee?

Schon mal vielen Dank im Voraus.

Gruss Peter

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #1 on: October 08, 2002, 07:50:53 AM »
Eine PHP Datie mit folgendem Inhalt in den admin-Ordner und aufrufen:

<?php 
define
('IN_CP'1); 
define('ROOT_PATH''./../'); 
require(
'admin_global.php'); 

$sql "SELECT * 
        FROM "
.IMAGES_TABLE
$result $site_db->query($sql); 
while (
$row $site_db->fetch_array($result)) { 
  
  if (!
preg_match('#^https?\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i'$row['image_media_file'])) {
    
$path "http://www.yourdomain.com/4images/data/media/".$row['cat_id']."/".$row['image_media_file']; 

    
$sql "UPDATE ".IMAGES_TABLE.
            SET image_media_file = '
$path
            WHERE image_id = "
.$row['image_id']; 
    
$site_db->query($sql);
  }

?>


Die Variable $path musst Du dann noch anpassen.

Gruß Jan
« Last Edit: November 24, 2008, 10:03:44 AM by Nicky »
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline penum

  • Newbie
  • *
  • Posts: 46
    • View Profile
    • http://www.digicamfotos.de
Klasse
« Reply #2 on: October 08, 2002, 08:02:36 AM »
Vielen Dank genau so kann ich es gebrauchen.
Für die Thumbs kann ich es ja dann analog anpassen.

Jan, ich kann Dir immer wieder nur danken!
Dein Support ist erste Klasse.

Hast Du noch ein Trick für mich, wenn man die PHP-Datei
2mal aufgrufen würde, dass dann nicht nochmals
der Pfad erweitert würde?

Nochmals vielen Dank!

Gruss Peter

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #3 on: October 08, 2002, 08:12:57 AM »
Dazu nimmst Du folgenden Code:

<?php 
define
('IN_CP'1); 
define('ROOT_PATH''./../'); 
require(
'admin_global.php'); 

$sql "SELECT * 
        FROM "
.IMAGES_TABLE
$result $site_db->query($sql); 
while (
$row $site_db->fetch_array($result)) { 
  
  if (!
preg_match('#^https?\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i'$row['image_media_file'])) {
    
$path "http://www.yourdomain.com/4images/data/media/".$row['cat_id']."/".$row['image_media_file']; 

    
$sql "UPDATE ".IMAGES_TABLE.
            SET image_media_file = '
$path
            WHERE image_id = "
.$row['image_id']; 
    
$site_db->query($sql);
  }

?>

Der reguläre Ausdruck prüft, ob der Wert des Feldes eine URL ist, wenn nicht wird das Update ausgeführt.

Jan
« Last Edit: November 24, 2008, 10:04:26 AM by Nicky »
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline penum

  • Newbie
  • *
  • Posts: 46
    • View Profile
    • http://www.digicamfotos.de
Genial
« Reply #4 on: October 08, 2002, 08:16:11 AM »
Genial,

nochmal danke.

Ich werde es heute abend direkt einmal
testen.

Jetzt muss ich erstmal ein Runde arbeiten.

Ich wünsche Dir noch einen schönen Tag.

Gruss Peter

Offline penum

  • Newbie
  • *
  • Posts: 46
    • View Profile
    • http://www.digicamfotos.de
Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #5 on: October 09, 2002, 01:45:10 AM »
Hallo Jan,

ich habe es gleich mal ausgetestet.

Der Pfad wurde korrekt vor den Bildnamen eingefügt.

Komischerweise wird mir aber ein 404-Fehler angezeigt.

Wenn ich in den Adminbereich gehe wird zu dem Foto
aber ein korrekter Link angezeigt.
z.B.
http://217.160.138.7/penum/4images/data/media/67/Hellowen1.jpg

Wenn ich den Link von Hand eingebe wird auch das Bild aufgerufen.
Nur halt in der Galerie nicht.

Etwas merkwürdig, oder?

Hast Du eine Idee? Welche Daten benötigst Du zum Testen?

Gruss Peter
Schau mal unter: http://www.digicamaward.de

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #6 on: October 09, 2002, 09:00:27 AM »
Ok, es liegt daran, dass Du keine richtige URL sondern eine IP benutzt. Ändere folgendes in "includes/functions.php":

Die folgenden Code-Stücke sind immer Teile eine regulären Ausdrucks.

Such nach
Code: [Select]
?[a-z]+
und ersetze es mit
Code: [Select]
?[a-z0-9]+

Such nach
Code: [Select]
*[a-z]+
und ersetze es mit
Code: [Select]
*[a-z0-9]+

Dann sollte es funktionieren.

Jan
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline penum

  • Newbie
  • *
  • Posts: 46
    • View Profile
    • http://www.digicamfotos.de
Klasse
« Reply #7 on: October 09, 2002, 06:45:30 PM »
Super!!!

Jetzt klappt es einwandfrei.

Vielen Dank :D

Gruss Peter

Offline meier

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #8 on: November 23, 2008, 07:18:53 PM »
Hallo, ich wollte den code auch anwenden. Bekomme aber diese Fehlermeldung:


Parse error: syntax error, unexpected '&' in /home/www/s1/meinZugang/html/4images/admin/pfadeaendern.php on line 4

 :?:

Offline Jan-Lukas

  • Addicted member
  • ******
  • Posts: 1.289
    • View Profile
    • Discover the New World of Kindersurprise
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #9 on: November 24, 2008, 07:45:54 AM »
der code ist von 2002, also wohl kaum mit der 1.7.6 kompatibel
Danke Harald




Offline meier

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #10 on: November 24, 2008, 09:24:36 AM »
schade, ich seh's.

Offline Nicky

  • Administrator
  • 4images Guru
  • *****
  • Posts: 3.195
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #11 on: November 24, 2008, 10:07:42 AM »
machts jetzt den test mit den obigen codes.
cheers
Nicky
Your first three "must do" before you ask a question ! (© by V@no)
- please read the Forum Rules ...
- please study the FAQ ...
- please try to Search for your answer ...

nicky.net 4 4images
Signature stolen from mawenzi

Offline meier

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #12 on: November 27, 2008, 09:47:15 PM »
Danke, aber nun werden die ID Nummer nicht mehr in dem data/media Ordner gespeichert, weder in dem alten noch zum anderen Pfad.

In welcher Datei kann ich den den geänderten Pfad überprüfen.

Meier

Offline meier

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #13 on: December 08, 2008, 10:33:20 AM »
Hallo, ich hab nochmal versucht den Pfad zurück zu ändern, also hab ich nochmal die Orginal Adresse eingefügt und das script ausgeführt.
Die Bilder werden aber nicht mehr angezeigt. Dann müste was im script nicht stimmen oder?

Danke.

Offline meier

  • Jr. Member
  • **
  • Posts: 58
    • View Profile
Re: Ändern des Pfades der Bilder in der MYSQL-DB
« Reply #14 on: December 09, 2008, 11:56:06 PM »
Jetzt gehts auf der normalen Adresse, ich mußte be neue Kategorie erstellen. Dann werden die Bilder wieder angezeigt.

ID Ordner werden weiter auf der alten Adresse erstellt.

"http://xxxx.dyndns.org/4images/data/media/"        Hier werden aber keine ID Ordner erstellt. Das script scheint keine Änderung vorzunehmen.


der Ordner Media bleibt leer.

Könnten es die Schreibrechte sein? Im FTP Programm hab ich 777 gesetzt, weiß aber nicht ob lighthttpd damit was anfangen kann.

ich habe auch das versucht

ftp://ftpuser:passwort@xxxx.dyndns.org/USB2-0IDEDEVICE-Partition-1-5/html/4images/data/media/

jemand eine Ahnung worand liegen könnte?

Danke.

« Last Edit: December 10, 2008, 12:18:15 AM by meier »