php mehr als nur ein eintrag...
Übersicht

![]() |
dimasterBetreff: php mehr als nur ein eintrag... |
![]() Antworten mit Zitat ![]() |
---|---|---|
hallo zusammen,
ich hab mal n bischen mit php rumprobiert. ich möchte eine serverliste erstellen bei der jeder neue server eingetragen wird... in bb is das auch net schwer aber da ich praktisch kein php kann weiss ich nicht wie ich denn php code ändern soll hier mal der code: Code: [AUSKLAPPEN] <?php define( 'SCORE_FILE', 'ip_host.html' ); $name = $_GET[ "name" ]; $ip = $_GET[ "ip" ]; if ( !isset( $name ) || !isset( $ip ) ) die( "IP wird automatisch gespeichert" ); if ( file_exists( SCORE_FILE ) ) $file = fopen( SCORE_FILE, "w" ); else $file = fopen( SCORE_FILE, "a" ); fwrite( $file, "$name $ip" ); fclose( $file ); echo "Erfolgreich gespeichert..."; ?> mfg dimaster P.S. hab die suche schon benutzt aber nichts gefunden!!! |
||
![]() |
Ctuchik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn dir mysql zur verfügung steht dann würde ich das benutzen, das erleichtert meiner Meinung nach sehr vieles.
Zum Problem: Wenn ich es richtig verstehe überschreibt er immer die vorherigen Daten wenn er einen neuen Server hinzufügt, richtig? EDIT: Halt ich nehm alles zurück, es müsste eigentlich funktionieren wenn du die if-Abfrage mit file exists rausnimmst und die Datei mit fopen(SCORE_FILE,"a"); öffnest. Siehe dazu: http://www.php.net/fopen Du benutzt nämlich wenn file_exists true ist den Parameter "w", d.h. er überschreibt die Datei quasi. |
||
Zu den Nebenwirkungen gehören trockener Mund, Übelkeit, Erbrechen, Harnstau, schmerzhafter rektaler Juckreiz, Halluzinationen, Demenz, Psychose, Koma, Tod und Mundgeruch!
Magie eignet sich nicht für alle! Fraget euren Arzt oder Apotheker! |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
danke ![]() |
||
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
nun noch ne ganz dumme frage.... also wie mach ich dass die ips nicht neben einander geschrieben sondern untereinander?
Code: [AUSKLAPPEN] <?php define( 'SCORE_FILE', 'ip_host.html' ); $name = $_GET[ "name" ]; $ip = $_GET[ "ip" ]; if ( !isset( $name ) || !isset( $ip ) ) die( "IP wird automatisch gespeichert" ); if ( file_exists( SCORE_FILE ) ) $file = fopen( SCORE_FILE, "a" ); fwrite( $file, "$name $ip" ); fclose( $file ); echo "Erfolgreich gespeichert..."; ?> |
||
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] fwrite( $file, "$name $ip\n" );
Hänge einfach ein \n hinter den Teil des Strings an dem eine neue Zeile begonnen werden soll. |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
mann bin ich dumm ![]() |
||
![]() |
dimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
hallo da bin ich nochmal mit noch ner dümmeren frage hab in php tutorials etc nach geschaut aber nichts gefunden
code: Code: [AUSKLAPPEN] <?php define( 'SCORE_FILE', 'ip_host.html' ); $name = $_GET[ "name" ]; $ip = $_GET[ "ip" ]; if ( !isset( $name ) || !isset( $ip ) ) die( "IP wird automatisch gespeichert" ); if ( file_exists( SCORE_FILE ) ) $file = fopen( SCORE_FILE, "a" ); fwrite( $file, "$name $ip\n" ); fclose( $file ); echo "Erfolgreich gespeichert..."; ?> wie kann ich machen wenn der server geschlossen wir wird er gelöst wie es in bb geht weiss ich aber wie gehts in php?sorry für die dummen fragen mfg dimaster |
||
![]() |
Ctuchik |
![]() Antworten mit Zitat ![]() |
---|---|---|
BlitzBasic: [AUSKLAPPEN]
Erklärung: mit $daten = file(SCORE_FILE) wird die Datei zeilenweise in einen Array eingelesen. Danach wird sie zum schreiben mit "w" geöffnet, also überschrieben. Jetzt werden die Daten in einer Schleife durchgegangen (count($daten) gibt die Anzahl der Einträge im Array $daten zurück) $serverinfo = explode(" ",$daten[$i]) splittet den String auf mit einem Leerzeichen als Trennzeichen. In $serverinfo[0] ist also jetzt der Name und in $serverinfo[1] die Ip des jeweiligen Servers. Dann wird nur noch überprüft ob die Ip ungleich der zu löschenden ip ist und dann der Server wieder in die Datei geschrieben. Am Ende haben wir also alle Server wieder hineingeschrieben, bis auf den den wir löschen wollten. Noch was: Ich benutze zum Zeilenumbruch immer \r\n, ob das einen Unterschied zu nur \n amcht weiss ich nicht, glaube aber mal gelesen zu haben, dass Windowsdateien das \r brauchen. MfG Ctuchik |
||
Zu den Nebenwirkungen gehören trockener Mund, Übelkeit, Erbrechen, Harnstau, schmerzhafter rektaler Juckreiz, Halluzinationen, Demenz, Psychose, Koma, Tod und Mundgeruch!
Magie eignet sich nicht für alle! Fraget euren Arzt oder Apotheker! |
![]() |
bruZard |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dein Programm muss einen sogenannten Query an den Server schicken. Dieser sagt dass das Programm geschlossen wird. Das heisst für das PHP Script: "Lösche den Server aus der Liste" ... nun ist die Aufgabenstellung das in einem Textfile zu lösen wesentlich komplexer als ein einzeiliger Aufruf in einer Datenbankabfrage.
Du solltest Dich wirklich zunächst stärker mit PHP befassen, dann ein wenig über MySQL Datenbanken lernen und dann erst versuchen das Ganze in BB anzuwenden. |
||
PIV 2,4GHz - 1GB DDR 333 - ATI Radeon9600 - WinXP - DX9.0c - BMax 1.14 - B3D 1.91 - 1280x1024x32
User posted image |
![]() |
Ctuchik |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei meinem Code bin ich natürlich dvon ausgegangen, dass der Server dem PHp-Script meldet, dass er geschlossen wird.
Wenn der Server allerdings abstürzt ergeben sich Probleme. Daher wäre es vielleicht ganz praktisch, dass der Server alle 2 Minuten oder so dem Script melden muss dass er noch existiert, sonst wird er gelöscht. @bruzard: MySQL ist natürlihc viel leichter aber vielleicht unterstützt das sein Webspace nicht! |
||
Zu den Nebenwirkungen gehören trockener Mund, Übelkeit, Erbrechen, Harnstau, schmerzhafter rektaler Juckreiz, Halluzinationen, Demenz, Psychose, Koma, Tod und Mundgeruch!
Magie eignet sich nicht für alle! Fraget euren Arzt oder Apotheker! |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group