Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

In kleinem PHP Script Bedingung einbauen

Frage Entwicklung PHP

Mitglied: Estrela

Estrela (Level 1) - Jetzt verbinden

20.02.2009, aktualisiert 16:21 Uhr, 2580 Aufrufe, 1 Kommentar

Hallo zusammen.
Mit meinen bescheidenen Programmierkenntnissen habe ich folgendes Script gestrickt.

01.
<?php  
02.
$path = $_SERVER['REQUEST_URI']; 
03.
$file = basename($path); 
04.
$file = 'php/'.$file
05.
$IncText = file_get_contents ("$file"); 
06.
/*echo "$IncText";*
07.
$UeberZeil = file ('http://Pfad/zur/Datei/Suchwoerter.php'); 
08.
foreach ($UeberZeil as $value)	{ 
09.
/*echo "$value";*
10.
$teile = explode("#", $value); 
11.
$IncText = str_replace ($teile[0], $teile[1], $IncText); 
12.
13.
echo $IncText
14.
?> 	  
Die Situation:
Auf der Web-Seite sorgt das Script für die Ausgabe des modifizierten Textes. Zwei weitere Dateien sind beteiligt. Die Datei, die den Text($IncText) enthält, und die Datei, die die Suchwörter enthält($UeberZeil).
Letztere ist so aufgebaut:
Suchwort#Verlinkung zum relevanten Inhalt mit Suchwort als Linktext

Nun haben sich im Praxisbetrieb folgende Fehler herausgestellt:
Wenn links vom # als Suchwort ein zusammengesetztes auftaucht, z.B. rot gruen gelb#, wird anstandslos der Link eingesetzt.
Wenn aber danach nochmal rot als Suchwort in der Datei auftaucht, wird der Linktext von "rot gruen gelb" gefunden und rot nochmal verlinkt, was den ersten Link ungültig macht.
Also darf der Austausch nicht geschehen, wenn das gefundene Suchwort selbst schon in einem Link ist.

Das überfordert aber leider meine momentanen Kenntnisse.

Kann mir hier jemand weiterhelfen?

Mit freundlichen Grüßen

Estrela
Mitglied: Estrela
21.02.2009 um 12:58 Uhr
Hallo zusammen.

Ich möchte die Anfrage etwas konkretisieren.

Da ja der Text mit file_get_contents komplet eingelesen wurde, ist es da möglich, noch Bedingungen über die Fundorte der Treffer der Suchwörter zu stellen?

Sagen Wir, das in der Datei Suchwörter folgende Zeile steht:

gelb blau#<a href="Pfad/zur/Datei/gelb-blau.php">gelb blau</a>

Und in der Datei Text folgendes auftaucht:

Textzeile mit Text Text <a href="Pfad/zur/Datei/rot-gelb-blau.php">rot gelb blau</a> Text Text

Ist es da möglich, eine Bedingung einzubauen, die den Austausch nur vornimmt, wenn vom gefundenen Suchwort nicht links > und rechts < auftaucht und wenn ja, wie?

Danke soweit und Gruß

Estrela
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
VB for Applications
VBS Script zum versenden mehrerer Verknüpfungen zu Dateien per Lotus Notes

Frage von Sentinel87 zum Thema VB for Applications ...

PHP
gelöst Php regex und Array (5)

Frage von Thomas91 zum Thema PHP ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (14)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...