php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 14-10-2002, 13:44
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard Variable mit Textdatei vergleichen

Folgendes Problem.

Ich habe eine Textdatei in der diverse Namen gespeichert sind.
Die sieht wie folgt aus:
Zitat:
name1
name2
name3
etc
Nun gibt jemand über ein Inputfeld seinen Namen ein, der in der Variblen $name gespeichert wird.

Jetzt soll zuerst geprüft werden, ob der Name schon in der Textdatei existiert, wenn nicht soll er in der Textdatei angefügt werden und existiert er schon soll eine entsprechende Meldung ausgegeben werden.

Wie realisiere ich das am besten.

Danke schonmal im Vorraus.
Mit Zitat antworten
  #2 (permalink)  
Alt 14-10-2002, 13:52
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

$liste = file("textdatei.txt");
if (in_array($HTTP_POST_VARS['name'], $liste)){
print "is schon drin";
}
else{
$fp = fopen("textdatei.txt","a");
fwrite($fp,$HTTP_POST_VARS['name']);
fclose($fp);
}

so in etwa...
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #3 (permalink)  
Alt 14-10-2002, 14:12
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Danke für deine Antwort, aber das funzt nicht.

ich hatte es mal mit einer Schleife versucht, doch da hat er immer nur auf den letzten Eintrag in der Textdatei reagiert.

So in der art
PHP-Code:
$fp fopen("list.txt","r");
     if(
$fp)
     {
      while (!
feof($fp))
      {

         
$zeile fgets($fp100);
                  if(
$zeile == "$name")
         {
                  echo 
"$name existiert schon";
         
         }

      }
      
fclose($fp);

     } 
Vielleicht gibt es noch andere Lösungsansätze.
Mit Zitat antworten
  #4 (permalink)  
Alt 14-10-2002, 14:21
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

habs net getestet is aber klar das hier is vielleicht besser...
Teste mal aus...

$liste = file("textdatei.txt");
foreach($liste as $a){
$drin = (trim($a)==$HTTP_POST_VARS['name'])? true:false;
}
if($drin)echo "Du bist drin";
else{
$fp = fopen("textdatei.txt","a");
fwrite($fp,$HTTP_POST_VARS['name']."\r\n");
fclose($fp);
}
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

Geändert von MelloPie (14-10-2002 um 15:37 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 14-10-2002, 14:55
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Leider funktioniert auch das bei mir nicht

Vielleicht sollte ich doch besser Stricken lernen

Trotzdem, vielen Dank für deine Mühe.
Mit Zitat antworten
  #6 (permalink)  
Alt 14-10-2002, 15:40
BlobBanana
 Member
Links : Onlinestatus : BlobBanana ist offline
Registriert seit: Aug 2002
Beiträge: 462
BlobBanana ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also bei mir funzt die Loesung von MelloPie:

PHP-Code:
<?php

// Ab php 4.1.0 das Superglobal benutzen
$name $_POST["name"];

$liste file("test.txt");
if (
in_array($name$liste)) {
    print 
"is schon drin";
} else {
    
$fp fopen("test.txt","a");
    
fwrite($fp,$name);
    
fclose($fp);
}

?>
Mit Zitat antworten
  #7 (permalink)  
Alt 14-10-2002, 16:06
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das funktioniert bei mir einfach nicht, und die werte werden trotzdem in das txt-file geschrieben, obwohl sie doppelt sind.

Du schreibst etwas von :
// Ab php 4.1.0 das Superglobal benutzen

Was bedeutet das genau ?

Meine PHP-Version ist 4.1.1
Mit Zitat antworten
  #8 (permalink)  
Alt 14-10-2002, 16:11
BlobBanana
 Member
Links : Onlinestatus : BlobBanana ist offline
Registriert seit: Aug 2002
Beiträge: 462
BlobBanana ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Die "neuen" Superglobals ersetzen die "alten" $HTTP_POST_VARS["VAR"] welches man benutzen musste wenn register_globals auf off steht.

Hmm, warum funzt das bei dir nicht? Hast du vielleicht leerzeichen hinter den Eintraegen in der txt-Datei?
Mit Zitat antworten
  #9 (permalink)  
Alt 14-10-2002, 17:02
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich habe es jetzt doch anders gelöst.
Und noch einmal an meiner ersten Idee angesetzt.

Das Problem waren wohl die Zeilenumbrüche, die in der Textdatei enthalten waren.
PHP-Code:
$fp fopen("list.txt","r");
     if(
$fp)
     {
      while (!
feof($fp))
      {

         
$zeile fgets($fp100);
         
         if(
$name==str_replace("\n","","$zeile"))//das ist die geänderte Zeile

         
{
         echo 
"$name existiert schon";
         break;
         }

      }
      
fclose($fp);

     }
   else
      echo 
"Datei wurde nicht gefunden"
Das funktioniert jetzt.
Mit Zitat antworten
  #10 (permalink)  
Alt 14-10-2002, 17:09
BlobBanana
 Member
Links : Onlinestatus : BlobBanana ist offline
Registriert seit: Aug 2002
Beiträge: 462
BlobBanana ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Viele Wege fuehren nach Rom
Mit Zitat antworten
  #11 (permalink)  
Alt 14-10-2002, 17:29
Astrominus
 Junior Member
Links : Onlinestatus : Astrominus ist offline
Registriert seit: Aug 2002
Beiträge: 53
Astrominus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Jo - Vor allem bei PHP

Trotzdem verstehe ich nicht, wieso eure Version nicht funktionieren wollte

Na ja - egal, hauptsache es geht jetzt.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

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.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

HeidiSQL - kostenloses MySQL front-end Editor für Windows ansehen HeidiSQL - kostenloses MySQL front-end Editor für Windows

HeidiSQL - ist ein Windows-Editor für die bekannt open Source Datenbank mySQL

10.12.2018 Berni | Kategorie: MYSQL/ Management
piwik Open-Source Webanalyse-Software ansehen piwik Open-Source Webanalyse-Software

piwik ist eine gute Alternative zu Google Analytics. Viele Features und ein modernes Erscheinungsbild mit aussagefähigen Statistiken in Echtzeit

10.12.2018 phpler | Kategorie: PHP/ Besucherzaehler
jQuery Mobile ansehen jQuery Mobile

Touch-Optimized Web Framework für Smartphones & Tablets

09.12.2018 phpler | Kategorie: AJAX/ Framework
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:51 Uhr.