Languages Available: ..............................

Download Counter für eigene Cydia Repo erstellen

Posted by damar1st under Tutorials on Samstag Feb 25, 2012

Was benötige ich für den Download Counter ?

- apache httpd, oder ein anderer Server der .htaccess Dateien verwenden kann
- Zugang zu einer MYSQL-Datenbank
- Grundkenntnisse in PHP und MYSQL
- ein Texteditor (bitte nicht Notepad es richtet mehr Schaden an als das es euch hilft)

 

Los geht’s:

Als erstes erstellen wir eine neue .php Datei mit dem Namen config.php.
Diese benutzen wir für spätere Scripte zum Verbinden zur MYSQL-Datenbank.
<?php

  /*****************************************************
  ** Title........: Configuration File
  ** Filename.....: config.php
  ** Author.......: damar1st
  ** Homepage.....: http://damarist.de/
  ** Contact......: info@damarist.de
  ** Version......: 0.8
  ** Notes........: This file contains the configuration
  ** Last changed.: 01.03.2012
  ** Last change..:
  *****************************************************/

$server = "localhost";              //meist localhost
$Benutzer = "Benutzername";              // Benutzername deiner Datenbank einfügen
$Passwort = "Passwort";               // Passwort deiner Datenbank einfügen
$verbindung = mysql_connect ($server, $Benutzer, $Passwort); 
mysql_select_db("Datenbankname", $verbindung);               // Datenbankname einfügen

?>

Als nächstes erstellen wir in der MYSQL eine neue Tabelle. Führt folgende code
in der Sql aus:
CREATE TABLE `download` (
	`filename` varchar(255) NOT NULL,
	`dldate` DATETIME,
	`stats` int(11) NOT NULL,
	PRIMARY KEY  (`filename`)
)
Jetzt erstellen wir eine counter.php
<?php

  /*****************************************************
  ** Title........: REPO Counter File
  ** Filename.....: counter.php
  ** Author.......: damar1st
  ** Homepage.....: http://damarist.de/
  ** Contact......: info@damarist.de
  ** Version......: 0.8
  ** Last changed.: 01.03.2012
  ** Last change..:
  *****************************************************/

include "../config.php"; 	// einfügen der Verbindung zur SQL

$filename = mysql_real_escape_string($_GET['file']);
$path = $_SERVER['DOCUMENT_ROOT']."/";                    //Pfad zur Datei
$fullPath = $path.$filename;                             //Pfad zur Downloaddatei
$filetypes = array("deb");              // Unterstützte Dateitypen

if (!in_array(substr($filename, -3), $filetypes)) {
	echo "falscher Dateityp.";
	exit;
}

if ($fd = fopen ($fullPath, "r")) {
	//hinzufügen der Downloadanzahl
	$result = mysql_query("SELECT COUNT(*) AS countfile FROM download
	WHERE filename='" . $filename . "'");
	$data = mysql_fetch_array($result);
	$q = "";
	
	if ($data['countfile'] > 0) {
		$q = "UPDATE download SET dldate = NOW(), stats = stats + 1 WHERE
		filename = '" . $filename . "'";
	} else {
		$q = "INSERT INTO download (filename, dldate, stats) VALUES
		('" . $filename . "',NOW(), 1)";
	}
	$statresult = mysql_query($q);
	
	//der nächste Teil führt die Datei aus

	$fsize = filesize($fullPath);
	$path_parts = pathinfo($fullPath);

	header("Content-type: application/octet-stream");
	header("Content-Disposition: filename=\"".$path_parts["basename"]."\"");
	header("Content-length: $fsize");
	header("Cache-control: private");              //öffnen der Downloaddatei
	while(!feof($fd)) {
		$buffer = fread($fd, 2048);
		echo $buffer;
	}
}
fclose ($fd);
exit;

?>

 

Hier gibt es soweit nichts zu bearbeiten. Einfach abspeichern und weiter.
Nun öffnen wir wieder den Texteditor und erstellen eine “.htaccess” Datei und
tragen dort den Ordner ein in dem unsere deb-Dateien sind “YOURDEBSFOLDER”
RewriteEngine On
RewriteRule ^(.*).(deb|zip)$ /YOURDEBFOLDER/counter.php?file=$1.$2 [R,L]

 

Diese leitet den Zugriff auf eine Downloaddatei über unsere “counter.php”
weiter.
So nun dürfte unser Counter schon funktionieren. Erstellen wir noch
schnell eine download.php zum überpüfen ob alles funktioniert:
<?PHP

  /*****************************************************
  ** Title........: SQL Screen File
  ** Filename.....: download.php
  ** Author.......: damar1st
  ** Homepage.....: http://damarist.de/
  ** Contact......: info@damarist.de
  ** Version......: 0.8
  ** Last changed.: 01.03.2012
  ** Last change..:
  *****************************************************/

include "config.php";



$SQL = "SELECT * FROM download";
$result = mysql_query($SQL);



while ($db_field = mysql_fetch_assoc($result)) {

print $db_field['filename'] . "<BR>" ;
print $db_field['stats'] . "<BR>";
print $db_field['dldate'] . "<BR><BR><BR>";



}


?>

 

Danach die config.php, download.php und die htaccess ins ROOT-Verzeichniss eurer Repo kopieren
und die counter.php in euren “debs” Ordner. Cydia starten
und etwas aus eurer Source installieren.
Nun navigiert ihr mit eurem Browser zur download.php und wenn ihr alles
richtig gemacht habt zeigt sie euch den ersten Eintrag an.
Hier noch ein link zu den Beispieldateien


26 COMMENTS | Tags :

100 Gründe für einen Jailbreak

Posted by damar1st under Jailbreak on Freitag Feb 24, 2012

ADD COMMENTS | Tags :

Anonymous HD Lockscreen

Posted by damar1st under Cydia Themes on Sonntag Jan 29, 2012

Anonymous HD Lockscreen

- animated Lockscreen + Weather

 

Cydia Repo:

http://cydia.damarist.de

ADD COMMENTS | Tags :

Eigene Cydia Repo erstellen

Posted by damar1st under Tutorials on Dienstag Jan 24, 2012

Vorraussetzungen:

- Cydia (hier kannst du nach einem jailbreak für dein Gerät schauen)

- Webspace (z.B. 1&1 oder webhoster.ag)

- Ubuntu

- FTP-Client (z.B. FlashFXP)

 

Los geht’s:

Erstelle auf dem Desktop den Ordner ‘cydiarepo’.

Erstelle darin eine neue Datei mit TextEdit und füge folgenden Text ein:

————————————————————-

Origin: Name deiner Cydia-Repo.

Label: Angezeigter Name der repo

Suite: stable

Version: 1.0

Codename: stable

Architectures: darwin-arm

Components: main

Description: Beschreibung deiner Cydia-Repo

————————————————————-

Speichere die Datei als ‘Release’ in deinem `cydiarepo´Ordner ab.

Erstelle einen Unterordner mit dem Namen ‘debs’, darin kopierst du nun

deine Apps und Themesim .deb Format.

Nun öffnest du ein Terminal und navigierst in den ‘cydiarepo’ Ordner.

Gib den Befehl ” dpkg-scanpackages -m . /dev/null >Packages ” ein und bestätige.

Nachdem die Datei Packages erstellt wurde packst du sie mit dem Befehl

” gzip -f Packages ” ein. Nun entpackst du sie wieder im gleichen Ordner.

Jetzt solltest du in deinem ‘cydiarepo’ Ordner die drei Dateien Packages, Packages.gz, Release

und dein ‘debs’ Ordner haben.

Nun muss nur noch der Inhalt deines ‘cydiarepo’ Ordners auf den Web-Server ins

ROOT Verzeichniss hochgeladen werden.

Wenn ein neues Packet bzw. eine neue Version deines apps oder Themes verfügbar ist,

musst du die Deb-Datei und die zwei Packages Files durch die neuen ersetzen.

ADD COMMENTS | Tags :

USB Serial iPhone connector

Posted by damar1st under Hacks on Mittwoch Jan 4, 2012

Hier mein Test zu I0n1c’s (Stefan Esser) Präsentation über die
iOS Kernel Exploitings:

USB Serial iPhone connector

Fortsetzung folgt !!!

ADD COMMENTS | Tags :
Stop ACTA