>>PHP<< Query geht aber....(noch ma)

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

dimaster

Betreff: >>PHP<< Query geht aber....(noch ma)

BeitragSo, Jan 22, 2006 15:48
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo,

ich hab n problem mit meiner Servelist, ich möchte, dass wenn das server prog beendet wird die ip und die andern daten gelöst werden und zwar soll das ein php file übernehmen:
Code: [AUSKLAPPEN]

192.168.112.112
map1
logo.jpg
info.txt

es sollen alle infos + ip gelöst werden.
die ip alleine kann ich löschen, aber den rest nicht wie soll ich das machen?

mfg dimaster
  • Zuletzt bearbeitet von dimaster am Mo, Jan 23, 2006 20:19, insgesamt einmal bearbeitet

5k41

BeitragSo, Jan 22, 2006 16:09
Antworten mit Zitat
Benutzer-Profile anzeigen
ich würd mal sagen wenn du die IP löschst kann keine verbindung mehr hergestellt werden, da er die braucht (nur geschätzt ich weiss ja nicht genau was das da is Razz ) desswegen würde ich erst den rest und dann die IP löschen...wenn das das ist was du meintest dann könnte dir vll SeekFile weiter helfen..
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

dimaster

BeitragSo, Jan 22, 2006 17:05
Antworten mit Zitat
Benutzer-Profile anzeigen
ne also ich weiss, dass ich mich nicht ganz klar ausgedrückt hab
hier nochma:

ich möchte, dass aus einer Serverliste ip und infos gelöst werden, wenn der server beendet wird.

z.B.
Code: [AUSKLAPPEN]

102.0.0.1
info.txt
logo.jpg
map.dms
190.0.1.2
iii.txt
lig.jpg
map2.dms
203.0.0.2
iii22.txt
lig3.jpg
m4ap2.dms


und ich möchte jezt, dass wenn server beendet wird, z.B. ab ip 190.0.1.2 bis map2.dms gelöst wird.

hoffe, dass jetzt alles verständlich is.

mfg dimaster

Hubsi

BeitragSo, Jan 22, 2006 17:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich geh anhand des Threadtitels einfach mal davon aus das dies von einem php-Script auf einem Webserver erledigt werden soll? Wenn Du dazu noch eine Datenbank zur Verfügung hast geb ich Dir den Tip Dich nicht mit Dateien zu quälen Very Happy Ein einfachesCode: [AUSKLAPPEN]
$ip=getenv("REMOTE_ADDR");
mysql_query("DELETE FROM server WHERE ip='$ip' LIMIT 1;");
ist damit vollkommen ausreichend und die Verwaltung des ganzen ist extrem simpel Very Happy

Sollte es einen Grund dafür geben das Du mit Dateien arbeitest oder ich hab was vollkommen falsch verstanden will ich nix gesagt haben Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

dimaster

BeitragSo, Jan 22, 2006 19:59
Antworten mit Zitat
Benutzer-Profile anzeigen
hmmm, soweit stimmt das was du da sagst aber in der datenbank würden dann trotzdem ip,info,logo,map stehen und es soll ja alle löschen aber nur die von dem server also bis zur nächsten ip

Hubsi

BeitragSo, Jan 22, 2006 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Das löscht den ganzen Datensatz, samt logo, info, map und allem was in diesem Satz steht Wink Very Happy Das where ist nur dafür zuständig den richtigen rauszusuchen Very Happy Ein leicht verständliches Tutorial zu sql gibts auf www.schattenbaum.net/php Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...

dimaster

BeitragSo, Jan 22, 2006 21:47
Antworten mit Zitat
Benutzer-Profile anzeigen
ja kenn ich is ne gute seite, hab leider noch keine zeit gefunden mir mysql anzuschauen, werd dies aber nachholen!!! Very Happy

danke Wink
 

Klaas

BeitragMo, Jan 23, 2006 11:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Du kannst das auch wesentlich einfacher haben auch ohne ne DB. Hier ein paar einfache Funktionen:

Code: [AUSKLAPPEN]

function newServer($ip,$info,$logo,$map){
   global $serverlist;
   
   if(!$serverlist){
      $serverlist = array();
   }
   
   $serverlist[$ip] = array(
      "info" => $info,
      "logo" => $logo,
      "map" => $map
   );
}

function deleteServer($ip){
   global $serverlist;
   
   unset($serverlist[$ip]);
}

function save($filename){
   global $serverlist;
   
   $file = fopen($filename,"w+");
   fwrite($file,serialize($serverlist));
   fclose($file);
}

function load($filename){
   global $serverlist;
   
   $file = file_get_contents($filename);
   $serverlist = unserialize($file);
}

function output4bb(){
   global $serverlist;
   
   foreach($serverlist as $key=>$value){
      echo $key."\n";
      echo $value['info']."\n";
      echo $value['logo']."\n";
      echo $value['map']."\n";
   }
}

Hubsi

BeitragMo, Jan 23, 2006 16:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn Du mir jetzt noch verraten kannst was daran einfacher ist als ein Code: [AUSKLAPPEN]
mysql_query("INSERT INTO server (`map`,`info`,`ip`,`logo`) VALUES ('$map','$info','$ip','$logo')");

// Scriptcode zum löschen siehe oben
bin ich sehr überrascht Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Klaas

BeitragMo, Jan 23, 2006 16:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Stümmt ist nicht einfacher vom code aber er müßte sich nicht dransetzen und sich um SQl kümnmern bzw. sich eine besorgen wenn er keine hätte.

dimaster

BeitragMo, Jan 23, 2006 19:38
Antworten mit Zitat
Benutzer-Profile anzeigen
danke an beide, aber ich bevorzuge die php variante, weil ich die verstehe Very Happy Wink

also danke an beide

EDIT:hmm ich hab die funktionen mal ausprobiert und dann gemerkt, dass nur eine ip gespeichert werden kann!? mach ich da was falsch oder is das so? sollte ja eigentlich mehrere möglich sein, da es sonst keinen Sinn machen würde oder?

mfg dimaster
 

$tankY

BeitragSa, Feb 11, 2006 12:15
Antworten mit Zitat
Benutzer-Profile anzeigen
is nur ne kurze überlegung:
du speicherst alle ips in einen array (die daten auch) und löschst dann die ip, die raus soll, samt daten aus dem array, zum schluss leerst du die file, wo das gespeichert ist und schreibst deine array einträge in die file neu.

Ctuchik

BeitragSa, Feb 11, 2006 12:40
Antworten mit Zitat
Benutzer-Profile anzeigen
hm...mal aus dem Kopf geschrieben, ungetestet:

Moment, steckt noch ein Fehler drin, ich editiers gleich!
So, jetzt stimmts!
Code: [AUSKLAPPEN]
<?
$serverfile = 'serverlist.txt';

function newServer($ip,$info,$logo,$map){
  global $serverfile;

  $serverlist = file($serverfile);

  if (count($serverlist) % 4 != 0) {
      echo "Fehler: Anzahl der Zeilen nicht durch 4 teilbar. Liste wird gelöscht und neu geschrieben";
      unlink($serverfile);
      unset($serverlist);
      $serverlist = array();
  }

  $serverlist[] = $ip."\n";
  $serverlist[] = $info."\n";
  $serverlist[] = $logo."\n";
  $serverlist[] = $map."\n";
 
  writeList($serverlist);

}

function writeList($serverlist) {
  global $serverfile;

  if(!$fd = fopen($serverfile, "w")) {
      echo("Fehler beim Schreiben der Datei.");
      exit;
  }
 
  foreach ($serverlist as $line) {
      fwrite($fd, $line);
  }
 
}

function deleteServer($ip){
   global $serverfile;

   $serverlist = file($serverfile);
   for ($i=0;$i<count($serverlist);$i++) {
       if (trim($serverlist[$i]) == $ip) {
           unset($serverlist[$i]);
           unset($serverlist[$i+1]);
           unset($serverlist[$i+2]);
           unset($serverlist[$i+3]);
       }
   }
   
   writeList($serverlist);
}

function getList(){
   global $serverfile;
   
   $serverlist = file($serverfile);
   foreach ($serverlist as $line) {
       echo $line."<br>";
   }
}

?>
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!

Kryan

BeitragSa, Feb 11, 2006 13:17
Antworten mit Zitat
Benutzer-Profile anzeigen
ey junge mach das mit datenbanken, das is überhaupt nicht schwierig, brauchst lediglich einen anbieter, der auch mysql unterstützt, bzw. wenn du selbst deinen pc mit dem internet anschließt, dann brauchst du dir nur apache runterladen.........besser als dieser aufwand!!!!!!!
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!
 

$tankY

BeitragSa, Feb 11, 2006 13:36
Antworten mit Zitat
Benutzer-Profile anzeigen
es is doch besser zum editieren, wenn er es in txts macht, da nicht jeder anbieter ne mysql obefläche bietet

Kryan

BeitragSa, Feb 11, 2006 19:15
Antworten mit Zitat
Benutzer-Profile anzeigen
naja...ich kenn da so einen kostenlosen: www.gpages.de
Webspaceanbieter?
Klick hier!
Kultige Spieleschmiede?
Klick hier!

Hubsi

BeitragSo, Feb 12, 2006 9:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Es ist schon fast schwerer einen Anbieter zu finden bei dem keine Datenbank dabei ist Very Happy Zumal er sich auch ca. 200% Script und 2000% Probleme und Ärger sparen könnte Very Happy
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

$tankY

BeitragSo, Feb 12, 2006 19:20
Antworten mit Zitat
Benutzer-Profile anzeigen
nunja, er sollte ja entscheiden, was er bevorzieht

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group