Suchen
Inside Forum
Nützliche Links




 
phpforum.de bei Facebook
 
phpforum.de bei Twitter
 

Zurück   PHP Forum: phpforum.de > Datenbanken > Datenbanken

Datenbanken Alles rund um MySQL, MariaDB, PostgreSQL o.ä. und die NoSQL-Datenbanken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 27.12.2005, 20:15
php2005 php2005 ist offline
Engagierter Besucher
 
Registriert seit: 27.12.2005
Beiträge: 157
Standard

Hallo Leute!

habe ein echt schwieriges Problem. Hatte mir in den letzten 4 Stdunden ein ip-log script geschrieben.
Das Problem ist nur, dass ich die geloggten ip´s einfach nicht angezeigt bekomme.
Habe beide Scripts unten abgetippt. logger.php ist für das Speichern der IP,... zuständig.
show.php ist für das Anzeigen der geloggten Daten in einer Tabelle zuständig. Leider wird nichts
angezeigt ausser die Tabelle mit den vorgegebenen Namen.
Bitte helft mir!! Es ist dringeng.
Bin für jede Antwort dankbar.

Danke

Daniel
_________________________________________
logger.php

<?php

// Zugangsdaten
$mysqlserver = 'localhost'; // Adresse der MySql-Datenbank. BSP: localhost
$mysqluser = 'user'; // Benutzername
$mysqlpass = 'pass'; // Passwort
$mysqldb = 'user'; // Name der Datenbank.

// Verbindung - MySql Server
$db = mysql_connect ($mysqlserver, $mysqluser, $mysqlpass);

// => LOGGING <=
// Datensatz-Inhalte festlegen
$SQL_Befehl = "
INSERT INTO ip (
UserID,
Datum,
IP,
Host
) VALUES (
'',
$date,
$ip,
$host
)";

// Variablen $date + $ip + $host
$date = date("d-m-y---H-i");
$ip = $_SERVER['REMOTE_ADDR'];
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);

// Datensatz hinzufügen
$resultat = mysql_db_query($mysqldb, $SQL_Befehl);


// Verbindung trennen
mysql_close($db);

?>

---------------------------------------
show.php

<?php

// Zugangsdaten
$mysqlserver = 'localhost'; // Adresse der MySql-Datenbank. BSP: localhost
$mysqluser = 'user'; // Benutzername
$mysqlpass = 'pass'; // Passwort
$mysqldb = 'user'; // Name der Datenbank.


// Verbindung - MySql Server
$db = mysql_connect ($mysqlserver, $mysqluser, $mysqlpass);

// Datensatz-Ausgabe festlegen
$SQL_Befehl = "SELECT * FROM ip";

// Datensatz-Ausgabe durchführen
$resultat = mysql_db_query($mysqldb, $SQL_Befehl);

// Ausgabe als Tabelle, unter echo kann angepasst werden!
// Es muss aber später bestimmt werden, was wo
// dargestellt wird (BSP: <td>$UserID</td> ,...)!
echo "
<table border=1>
<tr>
<td>UserID</td>
<td>Datum</td>
<td>IP</td>
<td>Host</td>
</tr>
";

while ($row = mysql_fetch_array($resultat)) {
extract($row);

echo "
<tr>
<td>$UserID</td>
<td>$Datum</td>
<td>$IP</td>
<td>$Host</td>
</tr>
";

}
echo "</table>";

// Verbindung trennen
mysql_close($db);

?>
Mit Zitat antworten
  #2  
Alt 27.12.2005, 20:25
Gary Gary ist offline
Vorbildlicher Helfer
 
Registriert seit: 25.05.2004
Beiträge: 13.835
Standard

Verwende
DOKU-VORLESE-SERVICE(TM)
mixed mysql_query(string query[, resource link_identifier = NULL])
Send a MySQL query
statt
DOKU-VORLESE-SERVICE(TM)
resource mysql_db_query(string database, string query[, resource link_identifier = NULL])
Selects a database and executes a query on it
.
Zitat:
Anmerkung: Diese Funktion ist seit PHP 4.0.6 veraltet. Verwenden Sie diese Funktion nicht. Stattdessen sollten Sie die Funktionen mysql_select_db() und mysql_query() verwenden.
Dann
DOKU-VORLESE-SERVICE(TM)
string mysql_error([resource link_identifier = NULL])
Returns the text of the error message from previous MySQL operation
....

Versuch mal:
PHP Quellcode:
mysql_fetch_array($resultat, MYSQL_ASSOC)
oder direkt
PHP Quellcode:
und die Ausgabe dann mit
PHP Quellcode:
echo $row['UserID']; ...
.

Ansonsten, stimmen die Variablennamen (Groß- und Kleinschreibung)????

Und:

Standard-Antwort:
Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An den Anfang des Scriptes schreibt man die Zeile: error_reporting(E_ALL);
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt.

Und verwende das nächste Mal bitte die Formatierungsmöglichkeiten des Forum [ php]Code[ /php]
__________________
Gary
=============================
Schreie nach Besserem, bis du es auch erhältst. Das noch Bessere verabschiedet sich rechtzeitig vor deinem Lärm.
© Martin Gerhard Reisenberg (*1949)
Mit Zitat antworten
  #3  
Alt 27.12.2005, 20:26
php2005 php2005 ist offline
Engagierter Besucher
 
Registriert seit: 27.12.2005
Beiträge: 157
Standard

Hallo!

habe die 2 oberen php datein nochmal als zip datei zum download zur Verfügung gestellt.

http://luigi1990.funpic.de/ip-logger.zip

BITTE HELFT MIR.

MFG

Daniel
Mit Zitat antworten
  #4  
Alt 27.12.2005, 20:29
Gary Gary ist offline
Vorbildlicher Helfer
 
Registriert seit: 25.05.2004
Beiträge: 13.835
Standard

Hast du schon alle meine Anmerkungen innerhalb von einer Minute berücksichtigt???
__________________
Gary
=============================
Schreie nach Besserem, bis du es auch erhältst. Das noch Bessere verabschiedet sich rechtzeitig vor deinem Lärm.
© Martin Gerhard Reisenberg (*1949)
Mit Zitat antworten
  #5  
Alt 27.12.2005, 20:29
php2005 php2005 ist offline
Engagierter Besucher
 
Registriert seit: 27.12.2005
Beiträge: 157
Standard

Hallo Gary!

Danke für deine Tipps. Aber leider verstehe ich im Moment gar nicht, was ich machen soll. Kannst Du mir bitte mal die neue Datei/n posten oder als Download anbieten. Bin total aufgeregt und verstehe jetzt nichts mehr.
SORRY!

Bitte

Daniel
Mit Zitat antworten
  #6  
Alt 27.12.2005, 20:30
Nobody Nobody ist offline
Vorbildlicher Helfer
 
Registriert seit: 03.12.2002
Beiträge: 26.398
Standard

Zitat:
habe die 2 oberen php datein nochmal als zip datei zum download zur Verfügung gestellt.
Und die sollten wir jetzt download und nach Fehlern suchen? Das kannst du getrost vergessen!

Gehe die Hiweise von Gary durch, vor allem "Richtig debuggen" beachten und wenn du dann immer noch nichts finden solltest, dann poste den relevanten und aktuellen Quellcode. Und beachte dabei den blauen Text meiner Signatur

*** Nobody ***
Mit Zitat antworten
  #7  
Alt 27.12.2005, 20:32
php2005 php2005 ist offline
Engagierter Besucher
 
Registriert seit: 27.12.2005
Beiträge: 157
Standard

OK ich probier es nochmal. Bin aber hält ein totaler noob.

werde mich in 10 min wieder melden.

Big Thx

Daniel
Mit Zitat antworten
  #8  
Alt 27.12.2005, 20:34
Nobody Nobody ist offline
Vorbildlicher Helfer
 
Registriert seit: 03.12.2002
Beiträge: 26.398
Standard

Als totaler Noob kannst du das unmöglich in 10 Minuten gelesen, verstanden und umgesetzt haben! Ganz zu Schweigen von "Richtig debuggen"

*** Nobody ***
Mit Zitat antworten
  #9  
Alt 27.12.2005, 20:34
Gary Gary ist offline
Vorbildlicher Helfer
 
Registriert seit: 25.05.2004
Beiträge: 13.835
Standard

Zitat:
php2005 postete
Kannst Du mir bitte mal die neue Datei/n posten oder als Download anbieten. Bin total aufgeregt und verstehe jetzt nichts mehr.
SORRY!

Bitte

Daniel
Tee trinken und locker bleiben......
__________________
Gary
=============================
Schreie nach Besserem, bis du es auch erhältst. Das noch Bessere verabschiedet sich rechtzeitig vor deinem Lärm.
© Martin Gerhard Reisenberg (*1949)
Mit Zitat antworten
  #10  
Alt 27.12.2005, 20:37
php2005 php2005 ist offline
Engagierter Besucher
 
Registriert seit: 27.12.2005
Beiträge: 157
Standard

Hi Gary!

Nochmal die Frage, da ich es nicht ganz verstanden hab:

Versuch mal:

PHP-Quellcode:

<?php
mysql_fetch_array($resultat, MYSQL_ASSOC)
?>


oder direkt
PHP-Quellcode:

<?php
mysql_fetch_assoc($resultat)
?>


und die Ausgabe dann mit
PHP-Quellcode:

<?php
echo $row['UserID']; ...
?>

Wo soll ich dass denn jetzt ersetzen und in welcher Datei????
Ich weiß ich stell mich dumm an, aber ich lerne gern dazu.


Daniel
Mit Zitat antworten


Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu
Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Daten von 1 MySQl in eine neue MySql kopieren medikus21 Datenbanken 1 22.03.2007 10:09
[MYSQL] MySql-Fehler lässt sich nicht beheben Fl1nt PHP 6 29.08.2006 18:10
1 Script mit mysql 1 ohne mysql mit Datenbank, verknüpfen? mijoko PHP 7 27.05.2006 10:29
Php Logger Gamesagent PHP 2 20.05.2006 08:56
Großes Php/ Mysql - Problem (30mb Daten in Mysql?) gondor PHP 5 28.07.2004 11:59


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:23 Uhr.


Powered by vBulletin® Version 3.8.8 (Deutsch)
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Powered by NuWiki v1.3 RC1 Copyright ©2006-2007, NuHit, LLC