mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 28.03.2024 11:26 Benutzername: Passwort: Auto-Login

Thema: useronlinescript funktioniert nicht richtig vom 16.02.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> useronlinescript funktioniert nicht richtig
Autor Nachricht
new001
Threadersteller

Dabei seit: 16.02.2006
Ort: Sundern
Alter: 37
Geschlecht: Männlich
Verfasst Do 16.02.2006 14:39
Titel

useronlinescript funktioniert nicht richtig

Antworten mit Zitat Zum Seitenanfang

hallo MGI User,

habe ein problem mit einem Script. Ich hoffe Ihr könnt mir weiterhelfen..denn ich werd solangsam verrückt hier.

das script:
Code:
<?
##########################################################################
# http://www.michatronic.de
# PHP Scripte, Tools für Windows, Tutorials ...
##########################################################################
#
# mt onlinecounter v 1.0
#
# Autor: Michael Knothe (michatronic@web.de)
#
# (C) 2006, Michael Knothe
#
# Dieses Script darf kostenlos genutzt werden.
# Es wäre jedoch nett, wenn Du auf Deiner Homepage einen Link zu
# MICHATRONIC.DE setzen würdest. :-)
# Um dieses Script konventionell nutzen zu dürfen, musst Du eine
# Lizenz erwerben. Bei Interesse melde Dich bitte per Mail bei mir.
# Dieses Script darf nicht ohne meine Genehmigung verkauft oder
# verbreitet werden. Ausser dem Layout und der Zeit für gültige Einträge
# darf nichts verändert werden.
#
#
# INSTALLATION: Vorraussetzung ist php > 4.0.
# Kopiere die beiden Dateien in das Verzeichnis, in welches
# Du den Counter einbinden möchtest. Binde den Counter mit
# "</?php include("usonline.php"); ?/>" (ohne Anführungszeichen und Schrägstriche) an eine
# beliebige Stelle einer php - Datei ein.
# Die Rechte für die Datei useronline.csv müssen mit einem chmod 777
# auf Deinem Webserver angelegt werden.
#
# Damit ist das Script einsatzbereit.
#
# Viel Spaß. --> Michael Knothe
#
###########################################################################
echo '<body><style type="text/css">
.textus { color:#FFFFFF; ;font-size:9;font-family:Arial;}

</style>';


$count=0;
$time = time();
$ip = getenv(REMOTE_ADDR);
$text=$time."#".$ip."\n";
$filename="usonline.csv";
$zeile = file($filename);

//prüfen und neu schreiben der gültigen Einträge
$fp = fopen($filename , "w");
ftruncate ($fp, 0);
rewind($fp);
foreach($zeile as $schreiben)
{
$array = explode("#",$schreiben);
if($ip==rtrim($array[1])){$vorhanden=1;}
//Hier kann die Aufenthaltszeit eingetragen werden
if($array[0] > $time -100 & $ip!=$array[1])
{
fwrite ($fp, $schreiben, 750);
}
}
fclose($fp);

$id = filesize($filename);
//neuen Eintrag hinzufügen
if($vorhanden!=1 or $id==0){
$datei = fopen($filename,"a");
flock($datei,2);
fwrite($datei,$text,750);
flock($datei,3);
fclose($datei);
}


//Ausgabe


for($x=0;$x<count($zeile);$x++){$count=$count+1;}
echo '<font class=airal2>'; echo $count;echo ' User online</font>';

?>


diese datei habe ich via inlcude-Befehl in eine index.php datei eingebungen.
die wurde von einem Programmierer erstellt den ich nicht kenne und keine ahnung eigentlich von php hab. lediglich schnitsel kann ich irgendwie verwenden und duch probieren kommt manichmal was gescheites bei raus.

kann mir aber jemand sagen warum das nicht funktioniert ?

meine index datei ist in PHP 4 geschrieben.
  View user's profile Private Nachricht senden
phar

Dabei seit: 16.02.2006
Ort: Aachen
Alter: -
Geschlecht: Männlich
Verfasst Fr 17.02.2006 02:54
Titel

Antworten mit Zitat Zum Seitenanfang

hi! versuchs mal nicht mit nem include sondern packs direkt in deine index.php mit rein.

um sowas per include zu machen, sind nämlich diverse besonderheiten zu beachten.
und der onlinecounter da scheint nicht dafür vorgesehen zu sein.

hope it helps!

phar
  View user's profile Private Nachricht senden
Anzeige
Anzeige
seal

Dabei seit: 31.07.2005
Ort: Pfalz
Alter: 41
Geschlecht: Männlich
Verfasst Fr 17.02.2006 02:58
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
# INSTALLATION: Vorraussetzung ist php > 4.0.
# Kopiere die beiden Dateien in das Verzeichnis, in welches
# Du den Counter einbinden möchtest. Binde den Counter mit
# "</?php include("usonline.php"); ?/>" (ohne Anführungszeichen und Schrägstriche) an eine
# beliebige Stelle einer php - Datei ein.
# Die Rechte für die Datei useronline.csv müssen mit einem chmod 777
# auf Deinem Webserver angelegt werden.
#
# Damit ist das Script einsatzbereit.


<-- Schuld! * Keine Ahnung... *
  View user's profile Private Nachricht senden
phar

Dabei seit: 16.02.2006
Ort: Aachen
Alter: -
Geschlecht: Männlich
Verfasst Fr 17.02.2006 03:20
Titel

Antworten mit Zitat Zum Seitenanfang

na lesen kann ich schon auch *bäh* aber hast du mal dran gedacht,
daß für solche includes z. B. alle variablen unique und eindeutig
sein müssen? und die sind in diesem counter-dings da ja nun eher
allgemein gehalten, sprich falls in deiner index.php sonst irgendwo
$count oder $time oder $text etc benutzt wird, funzt schon nix mehr.

nicht alles, in solchen gratis-skripts ist nämlich auch immer so! *zwinker*

phar
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Fr 17.02.2006 12:21
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
useronlinescript funktioniert nicht richtig

aha. was heißt: "funktioniert nicht richtig"?
was passiert? was passiert nicht? welche fehlermeldungen bekommst du?

Zitat:
habe ein problem mit einem Script.

ja, aber was das problem ist, solltest du vielleicht auch schreiben...

Zitat:
denn ich werd solangsam verrückt hier.

ja, ich auch...

Zitat:
kann mir aber jemand sagen warum das nicht funktioniert ?

nein. du sagst uns ja nicht, was passiert...

- schreib was "funktioniert nicht richtig" bedeutet.
- poste die fehlermeldung, die zeilennummer und die entsprechende zeile in deinem code (und die zeile davor).
- wenn es keine fehlermedlung gibt, dann beschreib, was nicht klappt bzw. was passiert.
- poste doch mal deinen code. also nicht nur dieses script, sondern wie du das script in deine datei eingebunden hast.
die include-funktion wird ausgeführt? die pfade stimmen?



EDIT:
Zitat:
Binde den Counter mit
[...] an eine beliebige Stelle einer php - Datei ein.


?

das sieht mir aber nicht so aus, als könne man das an jeder beliebigen stelle einbinden...
das script gibt ja body-tags aus...
je nachdem, wo du das einbindest, hat dein script dann zwei bodies, was natürlich nicht sein darf...
oder einen body im head, was auf den gleichen mist rauskommt...

Code:
echo '<body><style type="text/css">
.textus { color:#FFFFFF; ;font-size:9;font-family:Arial;}

</style>';


und dieser style-bereich ist so im body natürlich auch sehr unschön...
davon abgesehen folgt dann auch noch schrecklicher css-code.

Code:
font-size:9;

9 was?

9em; ? 9px; ? 9pt; ? 9ex; ?
9 elefanten? 9 würstchen?

da würde ich ja mal 'ne einheit hinter setzen...

Code:
font-family:Arial;

und in jedem fall sollte man als letzte angabe eine generische schrift-familie wählen:
Code:
font-family:Arial, sans-serif;


Zuletzt bearbeitet von rob am Fr 17.02.2006 12:30, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
new001
Threadersteller

Dabei seit: 16.02.2006
Ort: Sundern
Alter: 37
Geschlecht: Männlich
Verfasst Do 23.02.2006 02:26
Titel

Antworten mit Zitat Zum Seitenanfang

also erstmal vielen dank für die hilfe !

@phar:
hab beides probiert! Via include und direkt ins skript. geht beides nicht

@rob:
es kommt keine fehlermeldung oder sonst was. er zählt einfach nicht.. es steht immer die 1 da.. also 1 User online...auch wenn 3 oder ne millionen drauf sind... steht immer 1 da..
  View user's profile Private Nachricht senden
rob

Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht: Männlich
Verfasst Do 23.02.2006 09:31
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
es steht immer die 1 da.. also 1 User online...auch wenn 3 oder ne millionen drauf sind... steht immer 1 da..

Dann mußt Du halt auf Fehlersuche gehen...
- Schau, ob die Datei korrekt erstellt wird.
- Schau, ob die Dateirechte korrekt gesetzt sind.
- Schau, was in die Datei geschrieben wird.
- Mache sichtbar, was dein Script tut. Setze z.B. echo-Aufrufe in deine if-Blöcke. Dann siehst Du, ob der Code darin ausgeführt wird. Wenn nicht, muß Du mal schauen, warum eine Bedingung nicht zurifft, usw..

BTW: Solche Onlinecounter bringen es eh nicht... Das weißt Du? Aufgrund des HTTP kann das gar nicht wirklich funktionieren. Du kannst nur Scripte schreiben, die mehr oder weniger schlecht raten...
http://www.php-faq.de/q/q-code-user-online.html
  View user's profile Private Nachricht senden
 
Ähnliche Themen Codepen - wie funktioniert's?
Shopsystem - Wie funktioniert es
get URL () funktioniert nicht
wie Funktioniert das mit ADOdb
wie funktioniert so ein muster?
Wie funktioniert SEO (Grundsätze)
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.