upd to 0.3
This commit is contained in:
parent
1225caf012
commit
a14bb99b5f
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
mySQL image downloader / replacer wizard
|
mySQL image downloader / replacer wizard
|
||||||
|
|
||||||
v.0.2 beta adopted for php8
|
v.0.3 beta adopted for php8
|
||||||
|
|
||||||
DWTWL license https://soundragon.su/license/license.html
|
DWTWL license https://soundragon.su/license/license.html
|
||||||
|
|
||||||
|
|
36
exec.php
36
exec.php
|
@ -2,7 +2,7 @@
|
||||||
/**
|
/**
|
||||||
* mySQL image replacer - https://gitlab.com/zlax/mysqlimagereplacer
|
* mySQL image replacer - https://gitlab.com/zlax/mysqlimagereplacer
|
||||||
* adopted for php8.2
|
* adopted for php8.2
|
||||||
* v.0.2 beta - uder DWTWL license https://soundragon.su/license/license.html
|
* v.0.3 beta - uder DWTWL license https://soundragon.su/license/license.html
|
||||||
* exec script
|
* exec script
|
||||||
*
|
*
|
||||||
* !MAKE BACKUP OF YOUR SQL-TABLE BEFORE YOU TRY THIS SCRIPT!
|
* !MAKE BACKUP OF YOUR SQL-TABLE BEFORE YOU TRY THIS SCRIPT!
|
||||||
|
@ -25,24 +25,24 @@ function SaveStatus ($status,$raws,$updated,$failed,$deleted,$execdir) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function DownloadFopen($URL) {
|
function DownloadFopen($URL) {
|
||||||
if (file_exists(rawurldecode(pathinfo($URL)['basename']))) {
|
if (file_exists(rawurldecode(urldecode(pathinfo($URL)['basename'])))) {
|
||||||
$fileprefix=mt_rand(1000000,9999999);
|
$fileprefix=mt_rand(1000000,9999999);
|
||||||
file_put_contents($fileprefix.rawurldecode(pathinfo($URL)['basename']), file_get_contents($URL));
|
file_put_contents($fileprefix.rawurldecode(urldecode(pathinfo($URL)['basename'])), file_get_contents($URL));
|
||||||
if (md5_file($fileprefix.rawurldecode(pathinfo($URL)['basename']))==md5_file(rawurldecode(pathinfo($URL)['basename']))) {
|
if (md5_file($fileprefix.rawurldecode(urldecode(pathinfo($URL)['basename'])))==md5_file(rawurldecode(urldecode(pathinfo($URL)['basename'])))) {
|
||||||
unlink ($fileprefix.rawurldecode(pathinfo($URL)['basename']));
|
unlink ($fileprefix.rawurldecode(urldecode(pathinfo($URL)['basename'])));
|
||||||
$result=pathinfo($URL)['basename'];
|
$result=rawurldecode(urldecode(pathinfo($URL)['basename']));
|
||||||
} else {
|
} else {
|
||||||
if (exif_imagetype($fileprefix.rawurldecode(pathinfo($URL)['basename']))>0) $result=$fileprefix.pathinfo($URL)['basename'];
|
if (exif_imagetype($fileprefix.rawurldecodeurldecode((pathinfo($URL)['basename'])))>0) $result=$fileprefix.rawurldecode(urldecode(pathinfo($URL)['basename']));
|
||||||
else {
|
else {
|
||||||
unlink ($fileprefix.rawurldecode(pathinfo($URL)['basename']));
|
unlink ($fileprefix.rawurldecode(urldecode(pathinfo($URL)['basename'])));
|
||||||
$result=false;
|
$result=false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
file_put_contents(rawurldecode(pathinfo($URL)['basename']), file_get_contents($URL));
|
file_put_contents(rawurldecode(urldecode(pathinfo($URL)['basename'])), file_get_contents($URL));
|
||||||
if (exif_imagetype(rawurldecode(pathinfo($URL)['basename']))>0) $result=pathinfo($URL)['basename'];
|
if (exif_imagetype(rawurldecode(urldecode(pathinfo($URL)['basename'])))>0) $result=rawurldecode(urldecode(pathinfo($URL)['basename']));
|
||||||
else {
|
else {
|
||||||
unlink (rawurldecode(pathinfo($URL)['basename']));
|
unlink (rawurldecode(urldecode(pathinfo($URL)['basename'])));
|
||||||
$result=false;
|
$result=false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -71,7 +71,8 @@ $correctimagenumber=$indatacsv[14];
|
||||||
$filtcolumn=$indatacsv[15];
|
$filtcolumn=$indatacsv[15];
|
||||||
$filtvalue=$indatacsv[16];
|
$filtvalue=$indatacsv[16];
|
||||||
$ahrefparents=$indatacsv[17];
|
$ahrefparents=$indatacsv[17];
|
||||||
$webarchived=$indatacsv[18];
|
$webarchived=explode (",", $indatacsv[18]);
|
||||||
|
$fromnum=$indatacsv[19];
|
||||||
|
|
||||||
unlink ("indata.csv");
|
unlink ("indata.csv");
|
||||||
|
|
||||||
|
@ -90,7 +91,10 @@ $deletedurls=0;
|
||||||
$rawsedit=0;
|
$rawsedit=0;
|
||||||
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
||||||
$filteredpostnumber=0;
|
$filteredpostnumber=0;
|
||||||
|
$postnumber=0;
|
||||||
|
if (!$fromnum) $fromnum=0;
|
||||||
while($row=mysqli_fetch_assoc($resulttable)){
|
while($row=mysqli_fetch_assoc($resulttable)){
|
||||||
|
if ($postnumber >= $fromnum) {
|
||||||
if (!empty($filtcolumn) && !empty($filtvalue)) {
|
if (!empty($filtcolumn) && !empty($filtvalue)) {
|
||||||
if ($row[$filtcolumn] == $filtvalue) {
|
if ($row[$filtcolumn] == $filtvalue) {
|
||||||
if (!empty($row[$dbcolumn]))
|
if (!empty($row[$dbcolumn]))
|
||||||
|
@ -137,8 +141,8 @@ while($row=mysqli_fetch_assoc($resulttable)){
|
||||||
if ((!empty($parsedimgsrctag['host'])&&!empty($parsedimgsrctag['path']))&&(($parsedimgsrctag['scheme']=="http")||($parsedimgsrctag ['scheme']=="https"))&&(!($parsedimgsrctag['host']==$servername))) {
|
if ((!empty($parsedimgsrctag['host'])&&!empty($parsedimgsrctag['path']))&&(($parsedimgsrctag['scheme']=="http")||($parsedimgsrctag ['scheme']=="https"))&&(!($parsedimgsrctag['host']==$servername))) {
|
||||||
if ($webarchived) {
|
if ($webarchived) {
|
||||||
$parsedimgsrctagarch=parse_url($tag->getAttribute('src'));
|
$parsedimgsrctagarch=parse_url($tag->getAttribute('src'));
|
||||||
if ($parsedimgsrctagarch['host']==$webarchived) {
|
if (in_array($parsedimgsrctagarch['host'], $webarchived)) {
|
||||||
$webarchivelink="https://web.archive.org/web/20200101id_/".$tag->getAttribute('src');
|
$webarchivelink="https://web.archive.org/web/20150101id_/".$tag->getAttribute('src');
|
||||||
$newimgsrc=DownloadFopen($webarchivelink);
|
$newimgsrc=DownloadFopen($webarchivelink);
|
||||||
} else
|
} else
|
||||||
$newimgsrc=DownloadFopen($imgsrctag);
|
$newimgsrc=DownloadFopen($imgsrctag);
|
||||||
|
@ -155,6 +159,8 @@ while($row=mysqli_fetch_assoc($resulttable)){
|
||||||
if ($subdir) $srcbase=$srcbase.rawurlencode($subdir)."/";
|
if ($subdir) $srcbase=$srcbase.rawurlencode($subdir)."/";
|
||||||
$newimgsrc=$srcbase.$newimgsrc;
|
$newimgsrc=$srcbase.$newimgsrc;
|
||||||
$newcontent=str_replace($tag->getAttribute('src'),$newimgsrc,$newcontent);
|
$newcontent=str_replace($tag->getAttribute('src'),$newimgsrc,$newcontent);
|
||||||
|
if ($ahrefparents)
|
||||||
|
$newcontent=str_replace($imgsrctag,$newimgsrc,$newcontent);
|
||||||
unset($newimgsrc);
|
unset($newimgsrc);
|
||||||
$updatedurls++;
|
$updatedurls++;
|
||||||
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
||||||
|
@ -173,6 +179,8 @@ while($row=mysqli_fetch_assoc($resulttable)){
|
||||||
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$postnumber++;
|
||||||
|
}
|
||||||
$totalstatus="finished";
|
$totalstatus="finished";
|
||||||
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
SaveStatus ($totalstatus,$rawsedit,$updatedurls,$failedtoupdate,$deletedurls,$execdir);
|
||||||
echo $updatedurls," urls was downloaded and updated, ",$failedtoupdate," urls was failed to update","<br>\n";
|
echo $updatedurls," urls was downloaded and updated, ",$failedtoupdate," urls was failed to update","<br>\n";
|
||||||
|
|
20
index.php
20
index.php
|
@ -2,7 +2,7 @@
|
||||||
/**
|
/**
|
||||||
* mySQL image replacer - https://gitlab.com/zlax/mysqlimagereplacer
|
* mySQL image replacer - https://gitlab.com/zlax/mysqlimagereplacer
|
||||||
* adopted for php8.2
|
* adopted for php8.2
|
||||||
* v.0.2 beta - uder DWTWL license https://soundragon.su/license/license.html
|
* v.0.3 beta - uder DWTWL license https://soundragon.su/license/license.html
|
||||||
* interface script
|
* interface script
|
||||||
*
|
*
|
||||||
* !MAKE BACKUP OF YOUR SQL-TABLE BEFORE YOU TRY THIS SCRIPT!
|
* !MAKE BACKUP OF YOUR SQL-TABLE BEFORE YOU TRY THIS SCRIPT!
|
||||||
|
@ -80,6 +80,7 @@ function PageView() {
|
||||||
// -- Checking table
|
// -- Checking table
|
||||||
while($row=mysqli_fetch_assoc($resulttable)) {
|
while($row=mysqli_fetch_assoc($resulttable)) {
|
||||||
$contentpost=new DOMDocument();
|
$contentpost=new DOMDocument();
|
||||||
|
libxml_use_internal_errors(true);
|
||||||
if (!empty($_SESSION["filtcolumn"]) && !empty($_SESSION["filtvalue"])) {
|
if (!empty($_SESSION["filtcolumn"]) && !empty($_SESSION["filtvalue"])) {
|
||||||
if ($row[$_SESSION["filtcolumn"]] == $_SESSION["filtvalue"]) {
|
if ($row[$_SESSION["filtcolumn"]] == $_SESSION["filtvalue"]) {
|
||||||
if (!empty($row[$_SESSION["dbcolumn"]]))
|
if (!empty($row[$_SESSION["dbcolumn"]]))
|
||||||
|
@ -115,11 +116,13 @@ function PageView() {
|
||||||
$_SESSION["alreadyimagenumber"]++;
|
$_SESSION["alreadyimagenumber"]++;
|
||||||
else $_SESSION["brokenimagenumber"]++;
|
else $_SESSION["brokenimagenumber"]++;
|
||||||
}
|
}
|
||||||
|
libxml_clear_errors();
|
||||||
$postnumber++;
|
$postnumber++;
|
||||||
}
|
}
|
||||||
echo "<form action=index.php method=post>\n";
|
echo "<form action=index.php method=post>\n";
|
||||||
echo " directory to upload new images:<br>\n";
|
echo " directory to upload new images:<br>\n";
|
||||||
echo " ",getcwd(),"/<input type=text name=\"subdir\" value=\"",$_SESSION["subdir"],"\" maxlength=63> (leave blank if you don't need subdir)<br>\n";
|
echo " ",getcwd(),"/<input type=text name=\"subdir\" value=\"",$_SESSION["subdir"],"\" maxlength=63> (leave blank if you don't need subdir)<br>\n";
|
||||||
|
echo " start processing from raw number: <input type=text name=\"fromnum\" value=\"",$_SESSION["fromnum"],"\" maxlength=63> (leave blank if all)<br>\n";
|
||||||
echo " type of html-prefix:<br>\n";
|
echo " type of html-prefix:<br>\n";
|
||||||
echo " <input type=\"radio\" name=\"htmlprefix\" value=\"http\"";
|
echo " <input type=\"radio\" name=\"htmlprefix\" value=\"http\"";
|
||||||
if (!isset($_SESSION["htmlprefix"])) $_SESSION["htmlprefix"]="wo";
|
if (!isset($_SESSION["htmlprefix"])) $_SESSION["htmlprefix"]="wo";
|
||||||
|
@ -155,7 +158,7 @@ function PageView() {
|
||||||
if (!isset($_SESSION["ahrefparents"])) $_SESSION["ahrefparents"]=true;
|
if (!isset($_SESSION["ahrefparents"])) $_SESSION["ahrefparents"]=true;
|
||||||
if ($_SESSION["ahrefparents"]) echo " checked";
|
if ($_SESSION["ahrefparents"]) echo " checked";
|
||||||
echo ">download parent a hrefs if exists?<br>\n";
|
echo ">download parent a hrefs if exists?<br>\n";
|
||||||
echo "Domain for webarchive download: <input type=text name=\"webarchived\" value=\"",$_SESSION["webarchived"],"\" maxlength=127> (leave blank if you don't need to download images from webarchive)<br>\n";
|
echo "Domains for webarchive download, comma separated: <input type=text name=\"webarchived\" value=\"",$_SESSION["webarchived"],"\" maxlength=127> (leave blank if you don't need to download images from webarchive)<br>\n";
|
||||||
echo " <input type=checkbox name=\"fixbroken\" value=\"yes\"";
|
echo " <input type=checkbox name=\"fixbroken\" value=\"yes\"";
|
||||||
if (!isset($_SESSION["fixbroken"])) $_SESSION["fixbroken"]=false;
|
if (!isset($_SESSION["fixbroken"])) $_SESSION["fixbroken"]=false;
|
||||||
if ($_SESSION["fixbroken"]) echo " checked";
|
if ($_SESSION["fixbroken"]) echo " checked";
|
||||||
|
@ -186,11 +189,11 @@ function PageView() {
|
||||||
else if (isset($testurl['host']) && ($testurl['host']==$_SERVER['SERVER_NAME']))
|
else if (isset($testurl['host']) && ($testurl['host']==$_SERVER['SERVER_NAME']))
|
||||||
echo " <font color=yellow>";
|
echo " <font color=yellow>";
|
||||||
else echo " <font color=red>";
|
else echo " <font color=red>";
|
||||||
echo $imgs,"</font>, (";
|
echo rawurldecode(urldecode($imgs)),"</font>, (";
|
||||||
if ($_SESSION["imgsrcahrefs"][$postnum][$imgnum]==$_SESSION["imgsrcs"][$postnum][$imgnum])
|
if ($_SESSION["imgsrcahrefs"][$postnum][$imgnum]==$_SESSION["imgsrcs"][$postnum][$imgnum])
|
||||||
echo "<i>";
|
echo "<i>";
|
||||||
else echo "<b>";
|
else echo "<b>";
|
||||||
echo $_SESSION["imgsrcahrefs"][$postnum][$imgnum];
|
echo rawurldecode(urldecode($_SESSION["imgsrcahrefs"][$postnum][$imgnum]));
|
||||||
if ($_SESSION["imgsrcahrefs"][$postnum][$imgnum]==$_SESSION["imgsrcs"][$postnum][$imgnum])
|
if ($_SESSION["imgsrcahrefs"][$postnum][$imgnum]==$_SESSION["imgsrcs"][$postnum][$imgnum])
|
||||||
echo "</i>";
|
echo "</i>";
|
||||||
else echo "</b>";
|
else echo "</b>";
|
||||||
|
@ -217,7 +220,7 @@ function PageView() {
|
||||||
if ($_SESSION["ahrefparents"])
|
if ($_SESSION["ahrefparents"])
|
||||||
echo "parent a hrefs will be downloaded (if exists)<br>\n";
|
echo "parent a hrefs will be downloaded (if exists)<br>\n";
|
||||||
if ($_SESSION["webarchived"])
|
if ($_SESSION["webarchived"])
|
||||||
echo "this domain will be downloaded via webarchive: ", $_SESSION["webarchived"], "<br>\n";
|
echo "this domains will be downloaded via webarchive: ", $_SESSION["webarchived"], "<br>\n";
|
||||||
if ($_SESSION["fixbroken"])
|
if ($_SESSION["fixbroken"])
|
||||||
echo $_SESSION["brokenimagenumber"]," tags will be deleted<br>\n";
|
echo $_SESSION["brokenimagenumber"]," tags will be deleted<br>\n";
|
||||||
echo " are you sure to proceed?<br>\n";
|
echo " are you sure to proceed?<br>\n";
|
||||||
|
@ -261,6 +264,7 @@ function PageView() {
|
||||||
$csvsessiondata[]=$_SESSION["filtvalue"];
|
$csvsessiondata[]=$_SESSION["filtvalue"];
|
||||||
$csvsessiondata[]=$_SESSION["ahrefparents"];
|
$csvsessiondata[]=$_SESSION["ahrefparents"];
|
||||||
$csvsessiondata[]=$_SESSION["webarchived"];
|
$csvsessiondata[]=$_SESSION["webarchived"];
|
||||||
|
$csvsessiondata[]=$_SESSION["fromnum"];
|
||||||
$fhandle=fopen("indata.csv","w");
|
$fhandle=fopen("indata.csv","w");
|
||||||
fputcsv($fhandle,$csvsessiondata);
|
fputcsv($fhandle,$csvsessiondata);
|
||||||
fclose($fhandle);
|
fclose($fhandle);
|
||||||
|
@ -377,6 +381,9 @@ function PageView() {
|
||||||
$_SESSION["subdir"]=$_POST["subdir"];
|
$_SESSION["subdir"]=$_POST["subdir"];
|
||||||
$_SESSION["htmlprefix"]=$_POST["htmlprefix"];
|
$_SESSION["htmlprefix"]=$_POST["htmlprefix"];
|
||||||
$_SESSION["downloadtype"]=$_POST["dwnldtype"];
|
$_SESSION["downloadtype"]=$_POST["dwnldtype"];
|
||||||
|
if (isset($_POST['fromnum']))
|
||||||
|
$_SESSION["fromnum"]=$_POST["fromnum"];
|
||||||
|
else $_SESSION["fromnum"]=false;
|
||||||
if (isset($_POST['ahrefparents']) && ($_POST['ahrefparents'] == 'yes'))
|
if (isset($_POST['ahrefparents']) && ($_POST['ahrefparents'] == 'yes'))
|
||||||
$_SESSION["ahrefparents"]=true;
|
$_SESSION["ahrefparents"]=true;
|
||||||
else $_SESSION["ahrefparents"]=false;
|
else $_SESSION["ahrefparents"]=false;
|
||||||
|
@ -399,6 +406,9 @@ function PageView() {
|
||||||
$_SESSION["subdir"]=$_POST["subdir"];
|
$_SESSION["subdir"]=$_POST["subdir"];
|
||||||
$_SESSION["htmlprefix"]=$_POST["htmlprefix"];
|
$_SESSION["htmlprefix"]=$_POST["htmlprefix"];
|
||||||
$_SESSION["downloadtype"]=$_POST["dwnldtype"];
|
$_SESSION["downloadtype"]=$_POST["dwnldtype"];
|
||||||
|
if (isset($_POST['fromnum']))
|
||||||
|
$_SESSION["fromnum"]=$_POST["fromnum"];
|
||||||
|
else $_SESSION["fromnum"]=false;
|
||||||
if (isset($_POST['ahrefparents']) && ($_POST['ahrefparents'] == 'yes'))
|
if (isset($_POST['ahrefparents']) && ($_POST['ahrefparents'] == 'yes'))
|
||||||
$_SESSION["ahrefparents"]=true;
|
$_SESSION["ahrefparents"]=true;
|
||||||
else $_SESSION["ahrefparents"]=false;
|
else $_SESSION["ahrefparents"]=false;
|
||||||
|
|
Loading…
Reference in New Issue