Skelbimas

Collapse
No announcement yet.

Pagalba kuriant nuotraukų talpyklos-puslapio projektą

Collapse
X
 
  • Filtrai
  • Laikas
  • Show
Clear All
new posts

    #21
    Aš nedariau migracijos, tai nežinau. Kaip atrodo atkurtos nuotraukos, galima pamatyti toje pačioje temoje ankstesniuose puslapiuose.

    Comment


      #22
      Parašė digital Rodyti pranešimą
      Aš nedariau migracijos, tai nežinau.
      Turėtų būti seni forumo backupai, gal būtų galima pažiūrėti, be papildomos informacijos ar prieigų sunku kažkuo padėti.

      Comment


        #23
        Parašė digital Rodyti pranešimą
        Aš nedariau migracijos, tai nežinau. Kaip atrodo atkurtos nuotraukos, galima pamatyti toje pačioje temoje ankstesniuose puslapiuose.
        Ar atkūrinėjant nuotraukas neteko pastebėt koreliacijos tarp seno ID ir naujo ID?

        Comment


          #24
          Ne. Naujam ID iš viso nėra albumo info, tik pačios foto.

          Comment


            #25
            Kaip suprantu nuotraukos sugedo po migracijos iš vBulletin versijos 3.8 į 5.x, ir konkrečiai neveikia failo pasiekimas per nuorodos formatą "picture.php?albumid=***&pictureid=***".

            Nors vBulletin nėra atviro kodo, bet pagūglinus galima rasti, kur kas nors įmetė savo forumo kodą į viešą Git repo, tad galima pažiūrėti kaip anksčiau veikė tas nebeveikiantis picture.php skriptas. Versijoje 3.8.7 daroma tokia SQL užklausa:
            Kodas:
            $imageinfo = $db->query_first_slave("
            SELECT picture.pictureid, picture.userid, picture.extension, picture.idhash, picture.state,
            albumpicture.dateline, album.state AS albumstate, profileblockprivacy.requirement AS privacy_requirement,
            " . ($vbulletin->GPC['thumb'] ?
            "picture.thumbnail AS filedata, picture.thumbnail_filesize AS filesize" :
            'picture.filedata, picture.filesize'
            ) . "
            FROM " . TABLE_PREFIX . "albumpicture AS albumpicture
            INNER JOIN " . TABLE_PREFIX . "picture AS picture ON (albumpicture.pictureid = picture.pictureid)
            INNER JOIN " . TABLE_PREFIX . "album AS album ON (albumpicture.albumid = album.albumid)
            LEFT JOIN " . TABLE_PREFIX . "profileblockprivacy AS profileblockprivacy ON
            (profileblockprivacy.userid = picture.userid AND profileblockprivacy.blockid = 'albums')
            WHERE albumpicture.albumid = " . $vbulletin->GPC['albumid'] . " AND albumpicture.pictureid = " . $vbulletin->GPC['pictureid']
            );
            t.y. pagal "albumid" ir "pictureid" surandamas įrašas lentelėje "albumpicture", ir tada per JOIN su lentele "picture" randamas stulpelis "pictureid", kuris turbūt atitinka naujuose URL naudojamą ID. Jei lentelė "albumpicture" vis dar egzistuoja forumo duombazėje, galima paruošti skriptą, kuris seno tipo nuotraukų nuorodas pakeistų į veikiančias.

            Jei migracija vyko ne tiesiogiai tarp versijų 3 -> 5, o paeiliui 3 -> 4 -> 5, verta pažiūrėti ir į versiją 4.2.2, kur picture.php veikia kitaip:
            Kodas:
            $imageinfo = $db->query_first_slave("
            SELECT pl.attachmentid
            FROM " . TABLE_PREFIX . "picturelegacy AS pl
            INNER JOIN " . TABLE_PREFIX . "attachment AS a ON (pl.attachmentid = a.attachmentid)
            WHERE pl.pictureid = " . $vbulletin->GPC['pictureid'] . "
            " . (($vbulletin->GPC['albumid']) ? "AND pl.type = 'album' AND pl.primaryid = " . $vbulletin->GPC['albumid'] : "") . "
            " . (($vbulletin->GPC['groupid']) ? "AND pl.type = 'group' AND pl.primaryid = " . $vbulletin->GPC['groupid'] : "") . "
            ");
            t.y. ten visi reikiami ID turėtų būti lentelėje "picturelegacy".

            Comment


              #26
              Deja, nėra nei albumpicture, nei picturelegacy lentų. Pabandysiu paklausti ar yra senos db backupai, bet abejoju.

              Comment

              Working...
              X