Hallo miteinadner,
ich habe bereits 43 seiten durchsucht hier im forum sowie im google imperium, wo ich erhofft habe eine lösung für mich zu finden, leider komme ich immer wieder zu "punkt a" zurück.
Daher habe ich mich einfach mal Registriert und hoffe ein user kann mir weiterhelfen
Ich habe ein Upload Script (filehosting) mit einem bekannten gecodet, es lag nun ca. 6 Monate auf cd und seit 1 woche sitze ich wieder aktiv drann.
index.php = upload form
succsess.php = Download / Löschlink ausgabe
Uplaod / downlaod und der Rest vom Script arbeitet 100% fehlerfrei.
Problem beschreibung:
-----------------------------
Uploade ich nun eine Datei, werde ich nach erfolgreichem upload auf die success.php weitergeleitet (redirect).
hmm wie fange ich an zu erklären ... also ich versuchs einfach mal.
Bei jedem Uplaod wird die ID in der Datenbank erhöht.
nachdem der uplaod vollzogen ist und die index erfolgreich durchlaufen wurde, kommt die weiterleitung:
Nun zum "eigentlichen Problem":
------------------------------------------
auf der succsess.php wird 1x der Download Link bereitgestellt und 1x der Löschlink.
codeauszug:
beispiel aus der Adrersszeile: .../success.php?id=75
Ich muss das "irgendwie" hinbekommen, das dieser Teil ".../success.php?id=75" irgendwie "verschlüsselt" wird, da jeder User einfach die ID ändern kann und so "fremde" uploads zb. löschen könnte, da sie succsess.php?id=xxx ja die downloadlinks bereit stellt.
Habe da an cookies gedacht, die ich dem user übergebe und das nach einer zeit "zerstört" wird, aber auch hier könnte der user ein file hochladen zb 2kb, somit hat er ja noch ein gültiges cookie und er könnte ja dann wieder in den id=xxx "rumspielen"
Daher dachte ich an Verschlüsselung. Das die id="verschlüsselter text" in der Browser URL steht.
Ich bin absolut Ratlos wie ich das bewerkstelligen könnte, das die id zb. in der index.php verschlüsselt an die succsess.php übergeben wird.
Ich danke allen im voraus für Antworten.
MFG
ich habe bereits 43 seiten durchsucht hier im forum sowie im google imperium, wo ich erhofft habe eine lösung für mich zu finden, leider komme ich immer wieder zu "punkt a" zurück.
Daher habe ich mich einfach mal Registriert und hoffe ein user kann mir weiterhelfen
Ich habe ein Upload Script (filehosting) mit einem bekannten gecodet, es lag nun ca. 6 Monate auf cd und seit 1 woche sitze ich wieder aktiv drann.
index.php = upload form
succsess.php = Download / Löschlink ausgabe
Uplaod / downlaod und der Rest vom Script arbeitet 100% fehlerfrei.
Problem beschreibung:
-----------------------------
Uploade ich nun eine Datei, werde ich nach erfolgreichem upload auf die success.php weitergeleitet (redirect).
hmm wie fange ich an zu erklären ... also ich versuchs einfach mal.
Bei jedem Uplaod wird die ID in der Datenbank erhöht.
PHP-Code:
$qry="INSERT INTO ".$db->tb("fileinfo")."(idkey,deletepw,dir,mime_type,file_name,size,
upload_time,expire_time,
max_dwnld,recipient,sender) VALUES('$key','$delete_pw','$dirkey','".$uploader->getMediaType()."',
'".$uploader->getSavedFileName()."',
".$uploader->getMediaSize().",
".time().",".(time()+($maxtimeval*86400)).",
".$maxcountval.",'$emailto','$emailfrom')";
$db->query($qry);
$newid=$db->get_insert_id(); //id holen
PHP-Code:
redirect("success.php?id=$newid");
Nun zum "eigentlichen Problem":
------------------------------------------
auf der succsess.php wird 1x der Download Link bereitgestellt und 1x der Löschlink.
codeauszug:
PHP-Code:
//...
$id=isset($_REQUEST["id"])?$_REQUEST["id"]:0;
//Downloadlink
$qry="SELECT idkey FROM ".$db->tb("fileinfo")." WHERE id='$id'";
$db->query($qry);
if($db->getrownum()>0)
{
$row=$db->getrow();
$link="<a href=\"download.php?id=".$row[0]."\" class=\"ltxt\">".HostURL()."download.php?id=".$row[0]."</a>";
}
else $link="<span class=\"ltxt\"><font color=red>Fehler! der Link kann nicht angezeigt werden.</font><span>";
$qry="SELECT idkey FROM ".$db->tb("fileinfo")." WHERE id='$id'";
$db->query($qry);
Ich muss das "irgendwie" hinbekommen, das dieser Teil ".../success.php?id=75" irgendwie "verschlüsselt" wird, da jeder User einfach die ID ändern kann und so "fremde" uploads zb. löschen könnte, da sie succsess.php?id=xxx ja die downloadlinks bereit stellt.
Habe da an cookies gedacht, die ich dem user übergebe und das nach einer zeit "zerstört" wird, aber auch hier könnte der user ein file hochladen zb 2kb, somit hat er ja noch ein gültiges cookie und er könnte ja dann wieder in den id=xxx "rumspielen"
Daher dachte ich an Verschlüsselung. Das die id="verschlüsselter text" in der Browser URL steht.
Ich bin absolut Ratlos wie ich das bewerkstelligen könnte, das die id zb. in der index.php verschlüsselt an die succsess.php übergeben wird.
Ich danke allen im voraus für Antworten.
MFG
Kommentar