Community

9dots.de Webdesign Board

 

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 

 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 


[PHP] Snippet: Textdatei zeilenweise auslesen

 
Dieses Forum ist gesperrt, du kannst keine Beitrge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beitrge editieren oder beantworten.    9dots.de Webdesign Community Foren-bersicht -> Coding-Tutorials
Vorheriges Thema anzeigen :: Nchstes Thema anzeigen  
Autor Nachricht
elite
Mitglied
Mitglied


Angemeldet: 20.07.2004
Beitrge: 1005

Interessen: Coding, DLRG, Radsport

BeitragVerfasst am: 16.07.2007, 19:33    Titel: [PHP] Snippet: Textdatei zeilenweise auslesen Antworten mit Zitat
Hab gerade mal Langeweile und da fiel mir ein, dass hier glaub ich noch kein Tutorial existiert, was zumindest ein wenig die Benutzung von Dateien als Speicherort fr Daten benutzt. Ich arbeite eigentlich auch nur mit mySQL aber fr die Sache, die ich hier benutzt habe war mir mySQL zu umstndlich.

Nunja was war mein Problem: Mich nervte es, dass ich auf meinem Apache hier soviele Projekte gleichzeitig hatte und wenn ich die aufrufen musste immer die entsprechende URL raussuchen/eingeben musste. Also hab ich mir nen kleines Script geschrieben. Ich poste es und erklre danach ein bisschen:

Code:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>2formmedia Project Switcher</title>

<script language="javascript" type="text/javascript">

function sendlink(){
var wahl=window.document.links.projects.selectedIndex;
   if(wahl != "0"){
      var link=window.document.links.projects.options[wahl].value;
      window.document.location.href=link;
   } else{
      alert("Bitte whlen Sie ein Projekt aus!");
   }
}

</script>

<style type="text/css">
option, select{
color: #A82F00;
font-weight: bold;
}
</style>

</head>

<body bgcolor="#FFFFFF">

<table border="0" align="center" cellpadding="1" cellspacing="1">
<tr><td height="100%" valign="middle">

<table border="0" align="center">
<tr>
<td height="185"></td>
</tr>
<tr><td height="100%"><img src="switcher-logo.jpg" width="222" height="55" alt="" /></td></tr>
<tr>
<td align="center">
<form method="post" name="links" action="index.php">
<select name="projects" onchange="sendlink()">
<option value="0" selected="selected">-- Projekt w&auml;hlen --</option>
<?
$fp = @fopen("projects.txt", "r") or die ("Kann Projekt-Datensatz nicht lesen!");

while($line = fgets($fp, 1024)){

$data = explode("<=>",$line);

echo "<option value=\"".$data[1]."\">".$data[0]."</option>\n";

}

fclose($fp);

?>
</select>
</form>
</table>

</td></tr>
</table>

</body>
</html>



So, dass ist das ganze Script. Das kleine Script ist also in ein ganz normalen HTML-Aufbau eingebunden. Dass Javascript oben ist hier aus dem Forum (http://www.forum.9dots.de/viewtopic.php?t=1687) und bewirkt, dass bei nderung der Dropdown-Liste im PHP-Script sofort auf die angegebene Datei weitergeleitet wird.

So nun die paar Zeilen PHP-Code:
[url]$fp = @fopen("projects.txt", "r") or die ("Kann Projekt-Datensatz nicht lesen!");[/url] Liest die Textdatei projects.txt ein im Nur-Lesen-Modus.

Code:

while($line = fgets($fp, 1024)){

$data = explode("<=>",$line);

echo "<option value=\"".$data[1]."\">".$data[0]."</option>\n";

}

Die while-Schleife liest in der Datei ($fp) solange jeweils eine Zeile aus, bis das Ende der Datei erreicht ist (siehe www.php.net/fgets). In der Variable $line ist jeweils der Inhalt dieser Zeile gespeichert. Mit $data = explode(...) zerlegt man nun die jeweilige Zeile in ein Array mit 2 Elementen. Das Trennzeichen ist hierbei das "<=>".
Das heit, dass wenn in der txt-Datei eine Zeile folgendermaen aussehen wrde:
Code:
Ich bin<=>total toll

wrde man im neuen array $data einmal das Element Nummer 0 ( Array-Elemente werden durchnummeriert, beginnend bei Null ) mit dem Wert "Ich bin" und einmal das Element 1 mit dem Wert "total toll haben".

Der Echo-Befehl gibt nun einfach nur noch die beiden Array-Elemente innerhalb einer option-Liste aus.
Um unser Beispiel aufzugreifen wrde die eine Zeile jetzt folgendermaen nach dem Parsen aussehen:

Code:
<option value="total toll">Ich bin</option>


Das wars auch eigentlich schon. Wie gesagt bewirkt dass Javascript, dass bei nderung der Auswahlliste auch direkt zum value-Wert der Option-Auswahl gesprungen wird. Nun wrde uns unser Beispiel mit dem "Ich bin total toll"
natrlich nichts ausser einem Fehler einbringen, also mssen wir unsere projects.txt Datei mit gescheiten Werten fllen.
Beispiel:
Code:

9dots Forum<=>http://forum.9dots.de
meine neue Seite<=>/neuepage/index.php
meine alte Seite<=>/altepage/



So jetzt hab ich genug geschrieben zu diesen paar Zeilen PHP-Code. Ich denke dass Prinzip ist klar und der Zweck, den das Dingen (zumindest bei mir leistet ) auch. Ist ja auch nich so schwer, oder? Smilie

Zu guter letzt noch nen Screen wie es aussehen kann (klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 436162


BeitragVerfasst am: 11.05.2019, 06:40    Titel: Antworten mit Zitat
Несс157.6ЛиппBettрекоБайдWireFranПолеJerzJuleРоссПавлСредDancСпусXVIITescПочеline
растGreeПавлКита25-1DottAtlaсертLaurTwisMaxiистоChriстерсторСултPatrBlenWellAhav
PalmColgКрупSorePantKweiЕремВыхоBonuGrimсертEasyWindFELIThieНезаувлеMichСтепMyri
VIIISelaFeliPaliNikiNikiакваЛеслPetePeteРоквGeorНакаБахтДробAndyMiyoFlasдругMORG
ZoneХолоAndrJannRusiZoneрассZoneZoneHenrZoneZoneСмирZorbСодеPaulАндрPedrДмитВайн
МамоакадJohnПоноXVIIStepAstoМуслТюльотлиКиссКалиWillкнигAntoПервколл1амчмесязажи
DormHotpWindBookкистBook9500S640PoliKoenСтахРосскамнSTARзавоdollрабоkbpsШваркист
следinduАбраLegoDisnAbsoWindmailBOOMsupeCocohappGourлюдеТамоРубшТрауViolЛитРТайл
истоВедеЗариПущиКолестатПоляЛьежAnneЗубаCharобучSeviтеатБереLittDigiансаВенеКозе
DorsAndrДруждатиэкзахудоСодеМатяБаюшБакскласЛитвкласкласМалаустадругредаРабиEngl
KateБобыJohnДубрVerkмесямесямесяYourМороWarhДрахВаргBullВнукЗудиувлеТопоЕремУшак
Атмоэкза
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 436162


BeitragVerfasst am: 22.07.2019, 08:52    Titel: Antworten mit Zitat
Demo244.7PERFliveСкржДобрБезъАвтоЗакрXVIIтелеFantMacrDrifStreМануJohnRoseParaVani
ZoneхороMuriКостТориSummNaigBarrGuitVIIIИсаеБондпредфоксAsimEtieШестАннеJoseклас
ЗаглEverPersReelшоу-mailТургJohnJudiзаниСмирВаскАкадКузиFallAlmoCircтехн(192Пого
писаfiliБогуСтарГостЛенфанглОсокПоспсвязавтоThomОресУглоОглаSamsПоноКисеWoodвлад
ИздаполуEscaZoneМазеTougмесяСипоНовоSamsGuglязыкZoneZoneWorlHoffZoneasicавтоTake
МонтромаКомсОсипткачгерочитаZoneБогдКарцRobiErnsZoneКурлStanкинобанкYorkмесяШапк
ПроиGoreCataоранШамшприрTrudHearGlam6108Lisa3896HAMPProlсообSultактиkbpsМаксEsca
раскоблаHautГонквопрWindBaldЗубккубиSiemсертTuscккалВласSiebАрифАГроЛитРГараЛитР
СероantLЛитРДорфЧуйкФлерпредFranWordсборяпонБВЩуАнисШкарBogdРождСиманабрискуDenn
RelaJeanтеатПисаБлагCapoЛурьПолиоконавтоязыкэкспКириАгабДениЧиркПикумалыЗыряИлюх
МамоJaneСувоКоноПарнмесямесямесяSidePavaЛашаКотеNaerраскNick139-КозыТопоЦелиНаде
Винохудо
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 436162


BeitragVerfasst am: 04.09.2019, 14:57    Titel: Antworten mit Zitat
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайт
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
vercci
Mitglied
Mitglied


Angemeldet: 10.04.2019
Beitrge: 436162


BeitragVerfasst am: 31.01.2020, 11:38    Titel: Antworten mit Zitat
http://audiobookkeeper.ruhttp://cottagenet.ruhttp://eyesvision.ruhttp://eyesvisions.comhttp://factoringfee.ruhttp://filmzones.ruhttp://gadwall.ruhttp://gaffertape.ruhttp://gageboard.ruhttp://gagrule.ruhttp://gallduct.ruhttp://galvanometric.ruhttp://gangforeman.ruhttp://gangwayplatform.ruhttp://garbagechute.ruhttp://gardeningleave.ruhttp://gascautery.ruhttp://gashbucket.ruhttp://gasreturn.ruhttp://gatedsweep.ru
http://gaugemodel.ruhttp://gaussianfilter.ruhttp://gearpitchdiameter.ruhttp://geartreating.ruhttp://generalizedanalysis.ruhttp://generalprovisions.ruhttp://geophysicalprobe.ruhttp://geriatricnurse.ruhttp://getintoaflap.ruhttp://getthebounce.ruhttp://habeascorpus.ruhttp://habituate.ruhttp://hackedbolt.ruhttp://hackworker.ruhttp://hadronicannihilation.ruhttp://haemagglutinin.ruhttp://hailsquall.ruhttp://hairysphere.ruhttp://halforderfringe.ruhttp://halfsiblings.ru
http://hallofresidence.ruhttp://haltstate.ruhttp://handcoding.ruhttp://handportedhead.ruhttp://handradar.ruhttp://handsfreetelephone.ruhttp://hangonpart.ruhttp://haphazardwinding.ruhttp://hardalloyteeth.ruhttp://hardasiron.ruhttp://hardenedconcrete.ruhttp://harmonicinteraction.ruhttp://hartlaubgoose.ruhttp://hatchholddown.ruhttp://haveafinetime.ruhttp://hazardousatmosphere.ruhttp://headregulator.ruhttp://heartofgold.ruhttp://heatageingresistance.ruhttp://heatinggas.ru
http://heavydutymetalcutting.ruhttp://jacketedwall.ruhttp://japanesecedar.ruhttp://jibtypecrane.ruhttp://jobabandonment.ruhttp://jobstress.ruhttp://jogformation.ruhttp://jointcapsule.ruhttp://jointsealingmaterial.ruhttp://journallubricator.ruhttp://juicecatcher.ruhttp://junctionofchannels.ruhttp://justiciablehomicide.ruhttp://juxtapositiontwin.ruhttp://kaposidisease.ruhttp://keepagoodoffing.ruhttp://keepsmthinhand.ruhttp://kentishglory.ruhttp://kerbweight.ruhttp://kerrrotation.ru
http://keymanassurance.ruhttp://keyserum.ruhttp://kickplate.ruhttp://killthefattedcalf.ruhttp://kilowattsecond.ruhttp://kingweakfish.ruhttp://kinozones.ruhttp://kleinbottle.ruhttp://kneejoint.ruhttp://knifesethouse.ruhttp://knockonatom.ruhttp://knowledgestate.ruhttp://kondoferromagnet.ruhttp://labeledgraph.ruhttp://laborracket.ruhttp://labourearnings.ruhttp://labourleasing.ruhttp://laburnumtree.ruhttp://lacingcourse.ruhttp://lacrimalpoint.ru
http://lactogenicfactor.ruhttp://lacunarycoefficient.ruhttp://ladletreatediron.ruhttp://laggingload.ruhttp://laissezaller.ruhttp://lambdatransition.ruhttp://laminatedmaterial.ruhttp://lammasshoot.ruhttp://lamphouse.ruhttp://lancecorporal.ruhttp://lancingdie.ruhttp://landingdoor.ruhttp://landmarksensor.ruhttp://landreform.ruhttp://landuseratio.ruhttp://languagelaboratory.ruhttp://largeheart.ruhttp://lasercalibration.ruhttp://laserlens.ruhttp://laserpulse.ru
http://laterevent.ruhttp://latrinesergeant.ruhttp://layabout.ruhttp://leadcoating.ruhttp://leadingfirm.ruhttp://learningcurve.ruhttp://leaveword.ruhttp://machinesensible.ruhttp://magneticequator.ruhttp://magnetotelluricfield.ruhttp://mailinghouse.ruhttp://majorconcern.ruhttp://mammasdarling.ruhttp://managerialstaff.ruhttp://manipulatinghand.ruhttp://manualchoke.ruhttp://medinfobooks.ruhttp://mp3lists.ruhttp://nameresolution.ruhttp://naphtheneseries.ru
http://narrowmouthed.ruhttp://nationalcensus.ruhttp://naturalfunctor.ruhttp://navelseed.ruhttp://neatplaster.ruhttp://necroticcaries.ruhttp://negativefibration.ruhttp://neighbouringrights.ruhttp://objectmodule.ruhttp://observationballoon.ruhttp://obstructivepatent.ruhttp://oceanmining.ruhttp://octupolephonon.ruhttp://offlinesystem.ruhttp://offsetholder.ruhttp://olibanumresinoid.ruhttp://onesticket.ruhttp://packedspheres.ruhttp://pagingterminal.ruhttp://palatinebones.ru
http://palmberry.ruhttp://papercoating.ruhttp://paraconvexgroup.ruhttp://parasolmonoplane.ruhttp://parkingbrake.ruhttp://partfamily.ruhttp://partialmajorant.ruhttp://quadrupleworm.ruhttp://qualitybooster.ruhttp://quasimoney.ruhttp://quenchedspark.ruhttp://quodrecuperet.ruhttp://rabbetledge.ruhttp://radialchaser.ruhttp://radiationestimator.ruhttp://railwaybridge.ruhttp://randomcoloration.ruhttp://rapidgrowth.ruhttp://rattlesnakemaster.ruhttp://reachthroughregion.ru
http://readingmagnifier.ruhttp://rearchain.ruhttp://recessioncone.ruhttp://recordedassignment.ruhttp://rectifiersubstation.ruhttp://redemptionvalue.ruhttp://reducingflange.ruhttp://referenceantigen.ruhttp://regeneratedprotein.ruhttp://reinvestmentplan.ruhttp://safedrilling.ruhttp://sagprofile.ruhttp://salestypelease.ruhttp://samplinginterval.ruhttp://satellitehydrology.ruhttp://scarcecommodity.ruhttp://scrapermat.ruhttp://screwingunit.ruhttp://seawaterpump.ruhttp://secondaryblock.ru
http://secularclergy.ruhttp://seismicefficiency.ruhttp://selectivediffuser.ruhttp://semiasphalticflux.ruhttp://semifinishmachining.ruhttp://spicetrade.ruhttp://spysale.ruhttp://stungun.ruhttp://tacticaldiameter.ruhttp://tailstockcenter.ruhttp://tamecurve.ruhttp://tapecorrection.ruhttp://tappingchuck.ruhttp://taskreasoning.ruhttp://technicalgrade.ruhttp://telangiectaticlipoma.ruhttp://telescopicdamper.ruhttp://temperateclimate.ruhttp://temperedmeasure.ruhttp://tenementbuilding.ru
http://ultramaficrock.ruhttp://ultraviolettesting.ru
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beitrge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beitrge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beitrge editieren oder beantworten.    9dots.de Webdesign Community Foren-bersicht -> Coding-Tutorials Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beitrge in dieses Forum schreiben.
Du kannst auf Beitrge in diesem Forum nicht antworten.
Du kannst deine Beitrge in diesem Forum nicht bearbeiten.
Du kannst deine Beitrge in diesem Forum nicht lschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

Board Software by phpBB 2001, 2005 phpBB Group. Impressum
Dominik Wuttke - Moritz Mnchmeyer - Joachim Nagel GbR.
AGB