Rapidshare-Downloadmanager für Free-User

Status
Für weitere Antworten geschlossen.

itari

Benutzer
Mitglied seit
15. Mai 2008
Beiträge
21.900
Punkte für Reaktionen
14
Punkte
0
Mit system() wird ein neuer Prozess gestartet - das ist richtig - allerdings beendet sich das PHP-Skript dadurch ja nicht, sondern wartet auf Ausgabe des mit system() gestarteten Prozesses, um sie anzuzeigen. Warten heißt aber, dass es sich um eine Rekursion handelt: auf Prozessebene warten die Eltern auf die Beendigung der Kinder-Prozesse.

Vielleicht hab ich nun nicht alles verstanden ;), mich hat nur deine Bemerkung "das Script ruft sich einfach am Ende selbst auf" nachdenklich gemacht und es dir gepostet.

Itari
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
dass er eben nicht wartet macht das "&" am Ende des Befehls :)

Aber trotzdem danke für den Hinweis, ist ja nie verkehrt auch andere Sichtweisen zu bekommen. Ohne das "&" hättest du recht.
 

ralftopas

Benutzer
Mitglied seit
04. Feb 2009
Beiträge
84
Punkte für Reaktionen
0
Punkte
0
schee,
werd ich nachher mal antesten.
jetzt fehlt nur noch eine gui ;-)
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
und ganz dringend sowas wie ein Linkcatcher... dieses copy&paste ist nervig ^^
 

ArnoNuem

Benutzer
Mitglied seit
11. Dez 2007
Beiträge
31
Punkte für Reaktionen
0
Punkte
6
Fehlermeldung

Ich bekomme bei dem aktuellen Skript immer folgende Fehlermeldung:

Rich (BBCode):
Warning: system() [function.system]: PHP exec disable. in /volume/xxx/dl/rs.php on line 222

Ich rufe das Skript über den Browser auf und nicht über cronjob. Woran kann das liegen?

Gruß ArnoNuem
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Hi

das liegt daran, dass in deiner php.ini wohl unter

Code:
disable_functions =

"exec" verboten wird

Code:
disable_functions = exec

war bei mir Standardmäßig nicht disabled
 

ralftopas

Benutzer
Mitglied seit
04. Feb 2009
Beiträge
84
Punkte für Reaktionen
0
Punkte
0
was ganz einfaches...

funktioniert auch nicht so richtig ;-)
manchmal muss man n bisserl was abändern.
nicht wirklich universell einsetzbar, aber darf gerne verändert werden.

PHP:
Link Filter
<form id="form1" name="form1" method="post" action="link_filter.php">
  <label>link
  <input type="text" name="link" id="link" size="100"/>
  </label>
  <p>
    <input type="submit" name="button" id="button" value="Senden" />
  </p>
</form>
<?

if(isset($_POST['link'])){
echo '<hr>';
$rs_filter_adresse = $_POST['link'];



$chx = curl_init();
curl_setopt($chx, CURLOPT_URL, $rs_filter_adresse);
curl_setopt($chx, CURLOPT_RETURNTRANSFER, true);
curl_setopt($chx, CURLOPT_TIMEOUT, 30);
curl_setopt($chx, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.0.7) Gecko/2009011913 Firefox/3.0.6');	
$qt = curl_exec($chx);
curl_close($chx);


preg_match_all('#(http://rapidshare.com/files/)[0-9]{3,10}/.*rar#',$qt,$erg);
foreach($erg[0] as $elem){
	echo substr($elem,0,-71).'<br>';

}


}
?>
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Eine Funktionsbeschreibung wäre nicht schlecht ;)

Du könntest mal noch ne Abfrage reinbasteln... hab ich mittlerweile ab und an... da quatscht mich RS voll, es gibt keinen Slot für Free-User
 

ralftopas

Benutzer
Mitglied seit
04. Feb 2009
Beiträge
84
Punkte für Reaktionen
0
Punkte
0
Dafür bräuchte ich den Quelltext oder ein Wort in der Fehlermeldung, das spezifisch für den einen Fehler ist...

PS: Du hast ne PN..
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Currently a lot of users are downloading files. Please try again in 2 minutes or become a Premium member


das ist der Fehler
 

ralftopas

Benutzer
Mitglied seit
04. Feb 2009
Beiträge
84
Punkte für Reaktionen
0
Punkte
0
copy & paste die funktion ins script.

PHP:
function dl_verification($quelltext){
	// DL-Limit erreicht. Wielange zu warten?
	if(eregi('download limit',$quelltext)){
		$dl_wait_time = substr($quelltext, strpos($quelltext, 'about ')+6, (strpos($quelltext, 'minutes') - strpos($quelltext, 'about ')-7));
		echo 'Standby...<br>'.$dl_wait_time.' min. to wait!';
		return false;
	
	// Bereits ein DL am laufen.
	}elseif(eregi('IP address',$quelltext)){
		echo 'No parallel DLs';
		return false;
	
	// Datei nicht vorhanden	
	}elseif(eregi('check the download link',$quelltext)){
		echo 'Link corrupt';
		return false;	

	// Datei nicht vorhanden - durch RS gelöscht	
	}elseif(eregi('violation of our terms',$quelltext)){
		echo 'File deleted by RS';
		return false;	
	
	}elseif(eregi('suspected to contain',$quelltext)){
		echo 'File blocked by RS';
		return false;		

	}elseif(eregi('Currently',$quelltext)){
		echo 'No slots for free-members available';
		return false;
			
	// Dl möglich. 
	}else{
		return true;
	}
}

gruß ralf
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
kleiner Tip: benutze die funktion strpos() oder strstr(),, wenn du nur nach Zeichenketten suchst, statt eine Funktion zu benutzen, die mit der RegeX-Erweiterung langsamer ist.
Ausserdem ist diese Funktion ab 5.3.0 veraltet und sollte zukünftig nicht mehr verwendet werden.
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
hm aus irgendeinem grund übergibt curl_exec($ch) ein false statt dem quellcode...
gehts bei dir auch nichtmehr ?
 

ralftopas

Benutzer
Mitglied seit
04. Feb 2009
Beiträge
84
Punkte für Reaktionen
0
Punkte
0
ne geht bei mir auch nicht mehr.
hab gestern 942 eingespielt. curl_exec geht nicht, obwohl eigentl. laut phpinfo enabled...
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
jetz gehts ... nach dem update aber
 

h2opolo

Benutzer
Mitglied seit
27. Okt 2009
Beiträge
43
Punkte für Reaktionen
0
Punkte
0
Hallöle,
sorry schonmal vorweg, aber ich bin absoluter Syno-Noob und habe nun sämtliche Rapidshare-Threads durchgeackert. Leider konnte ich bisher noch keinen download zum laufen bringen.
Könntet ihr mal nen Tipp geben, was der einfachste Weg mit der neuen DSM 2.2-0942 (aus DS109) ist, als free-RS user nen download zu starten?
Benötige ich zwingend zusätzl. Skripte o.ä. oder sollte es jetzt auch mit Webinterface only gehen?

Sämtliche links die ich dem Webinterface übergebe (z.b. per .txt erzeugt aus .dlc via containerex), werden eingelesen und anscheinend startet auch ein download, allerdings haben die gezogenen Dateien alle die gleiche Größe von ca. 27KB (statt z.b. 100MB).

Was mache ich falsch? Muss ich die links aus den .dlc noch bearbeiten? Gibt es ein Standarduser/password für free RS user? Wo finde ich entsprechende logfiles?

Bin für jeden Tipp dankbar..
 

Free

Benutzer
Mitglied seit
26. Aug 2009
Beiträge
39
Punkte für Reaktionen
0
Punkte
0
Hi
als free user brauchst du scripte ... Das kann die ds sonst nicht und es geht per script auch erstmal nicht uebers webif

die kleinen dateien die er laedt sind die html files auf die du kommst wenn du den link im browser oeffnest ... Sollten auch in deinem dl verzeichnis liegen... Oeffnen tut nich weh ;)

viele gruesse
 

h2opolo

Benutzer
Mitglied seit
27. Okt 2009
Beiträge
43
Punkte für Reaktionen
0
Punkte
0
Hi Free,
danke für Info. Also sollte ich diesen Thread durcharbeiten und probieren? Oder gibt es irgendwo ein step-by-step für dummies? Arbeitet noch jemand an den Skripten die hier entstanden sind? GUI?

Greetz,
h2o
 

raily

Benutzer
Mitglied seit
09. Mrz 2009
Beiträge
73
Punkte für Reaktionen
0
Punkte
6
Wenn du ein GUI willst, empfehle ich dir den RSDM: rsdm.kingofcommedy.de
Läuft bei mir nach dem letzten Update wieder prima
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat