Downloadzähler

jasti

B1G-Software-Kunde
moin, kennt jemand nen guten downloadzähler?ich habe downi aber er zählt zwar die downloads aber ich kann nicht anzeigen bzw. er zeigt nicht an wieviel schohn geloadet wurde.

ich sollte das irgenwo am anfang/weis net genau wo) einbaun

<?php include("funktion.php"); ?>

und wo der zähler hin soll

<?php zahl("id"); ?>

aber es zeigt nichts an ?(



der code von funktion.php :


<?php
$hostname = "localhost";
$username = "xxxx";
$passwort = "xxxx";
$dbName = "xxxx";

$verbindung = @MYSQL_PCONNECT($hostname, $username, $passwort) OR DIE("Keine verbindung!");
@mysql_select_db("$dbName") or die( "Die Datenbank konnte nicht ausgewählt werden");

function zahl($id) {


und er code von
$result = mysql_query("select hits from tracker where id = '$id'");
$hits = mysql_result($result,0,"hits");
echo $hits;
}

?>


und der code von downi.php :


<?php
require("funktion.php");
$result = mysql_query("select hits,link from tracker where id = '$id'");
$hits = mysql_result($result,0,"hits");
$link = mysql_result($result,0,"link");
mysql_query("update tracker set hits=hits+1 where id='$id'");
if ($link=='') {
echo "Fehler beim Verbindungsaufbau.";
exit;
}
header("Location: $link");
?>


und der code von admin_downi.php :

<?php
if ($pass=="471100") {
require("funktion.php");
// Wenn Passwort korrekt ist, Verbindung zur Datenbank aufbauen
$db = mysql_connect($hostname, $username, $passwort);
mysql_select_db($dbName,$db);
?>


<div align="center">
<?php
// Daten loeschen
if($clear) mysql_query("DELETE FROM tracker WHERE idnr=$clear",$db);


// Daten ändern

if ($edit) {
if ($submit) {
$sql = "UPDATE tracker SET id='$id', hits='$hits', link='$link' WHERE idnr=$edit";
$result = mysql_query($sql,$db);
echo "Daten für die ID-Nr ".$edit." wurden geändert";
}
else {
$sql = "SELECT * FROM tracker WHERE idnr=$edit";
$result = mysql_query($sql,$db);
$data = mysql_fetch_array($result);
?>

<h1>Downi-Administration:</h1>
<form action=<?php echo $PHP_SELF; ?> method=post>
<input type=hidden name="edit" value="<? echo $data["idnr"] ?>">
<input type=hidden name="pass" value="<? echo $pass ?>">
<table border="0">
<tr>
<td valign="top">
<p>ID:<br><input type="text" name="id" value="<? echo $data["id"] ?>" size="24"></p>
</td></tr>
<tr>
<td valign="top">
<p>Hits:<br><input type="text" name="hits" value="<? echo $data["hits"] ?>" size="24"></p>
</td></tr>
<tr>
<td valign="top">
<p>Link:<br><input type="text" name="link" value="<? echo $data["link"] ?>" size="24"></p>
</td></tr>
<tr><td valign="top">
<p><input type="submit" name="submit" value="Ändern"></form></p>
</td></tr>
</table>


<?
}
}


// Daten neu eingeben
if ($submitl) {

mysql_query("insert into tracker (id,hits,link) VALUES ('$id','$hits','$link')");
echo "Daten für die wurden eingefügt";
}
if ($neueintrag) {

?>

<h1>D-t-o-Administration:</h1>
<form action=<?php echo $PHP_SELF; ?> method=post>
<input type=hidden name="edit" value="<? echo $data["idnr"] ?>">
<input type=hidden name="pass" value="<? echo $pass ?>">
<table border="0">
<tr>
<td valign="top">
<p>ID:<br><input type="text" name="id" size="24"></p>
</td></tr>
<tr>
<td valign="top">
<p>Hits:<br><input type="text" name="hits" size="24"></p>
</td></tr>
<tr>
<td valign="top">
<p>Link:<br><input type="text" name="link" size="24"></p>
</td></tr>
<tr><td valign="top">
<p><input type="submit" name="submitl" value="Eintragen"></form></p>
</td></tr>
</table>


<?
}
//Daten auslesen
$result = mysql_query("SELECT * FROM tracker",$db);
?>

<table border="1" cellspacing="0" cellpadding="3" align="center">
<tr>
<td><b>ID-Nr</b></td>
<td><b>ID</b></td>
<td><b>Hits</b></td>
<td><b>Link</b></td>
</tr>
<? while ($daten = mysql_fetch_array($result)) { ?>
<tr>
<td><? echo $daten[idnr]; ?></td>
<td><? echo $daten[id]; ?></td>
<td><? echo $daten[hits]; ?></td>
<td><? echo $daten[link]; ?></td>
<td><? echo "<a href=$PHP_SELF?clear=$daten[idnr]&pass=$pass>" ?>löschen</a></td>
<td><? echo "<a href=$PHP_SELF?edit=$daten[idnr]&pass=$pass>" ?>bearbeiten</a></td>
</tr>
<?php } ?>
</table>
</div>
<? echo "<a href=$PHP_SELF?neueintrag=ja&pass=$pass>" ?><b>Einen neuen Eintrag vornehmen</b></a>
<?php
}

//Wenn noch kein Passwort eingegeben, muss dies hier geschehen
else {
echo "<form action=$PHP_SELF method=post>";
echo "Passwort eingeben:<br>";
echo "<input type=password name=pass><br>";
echo "<input type=submit name=wech value=Einloggen>";
echo "</form>";
}
?>



ich hoffe es kann mir jemand helfen.
 
Last edited:
ich denke das Zitat an anderer Stelle von Ps2center hilft Dir, wenn Du den Counter in ein Template einbinden willst:

Ps2center said:
du darfst nur kein php mit reinschreiben,sondern musst {php}{/php} benutzen.



Force
 
also das geht überhaupt nicht ;(

es soll in einem normalen php oder wie hier in einem html dokument rein . zb.



<html>
<head>
<title>Movieload</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<?php include("funktion.php"); ?>
</head>
<body>
<p align="center"><a href="downi.php?id=xx"><img src="img_download.gif" width="105" height="22" border="0"></a></p>
<div align="center">
<p>  <font color="#FF00FF">
{php}<?php zahl("id"); ?>
{/php}
</font></p>
<p><font color="#FF9900">Dównloads ;o)</font></p>
</div>
<p align="center"> 
nbsp;</p>
</body>

</html>
 
jasti said:
also das geht überhaupt nicht ;(

es soll in einem normalen php oder wie hier in einem html dokument rein . zb.


speichere die Datei mit der Endung ".php" statt ".html" ab, sonst weiss der Server nicht, dass es PHP drinnen gibt ...

blöderweise habe ich in meiner Testdatenbank keine passenden Daten drin, darum liefert der Test auch nur das:

http://www.dreiundsiebzig.de/test004/

du kannst ja mal Datenbankinhalt als sql-Datei posten :)
schaffen wir schon :))
 
Last edited:
hier mal den inhalt der sql datei:

CREATE TABLE tracker (
idnr int (11) NOT NULL auto_increment,
id varchar (200),
hits int NOT NULL,
link varchar (255),
PRIMARY KEY (idnr), UNIQUE (idnr)
);
 
jasti said:
das geht ja ;o)

was hast gemacht???


gute Frage ;-) einfach probiert und gebastelt bis es ging... ich schick dir die Files wie sie jetzt auf dem Server liegen per E-Mail, sag mir bitte Deine Adresse bzw schreib mir an force ____ (at) ______ dreiundsiebzig punkt de (OHNE diese "___"-Striche dazwischen, nur wegen den spamern so verschoben ;-)), dann geht's ganz schnell.

Force
 
Back
Top