php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2005-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 13.10.2005, 11:46  
Erfahrener Benutzer
 
Registriert seit: 25.06.2005
Beiträge: 228
Marian
Standard Problem bei txt suche

Also ich habe ien script, das ein txt document durchsucht, und den gesuchten inhalt ausgibt.
Siehe script:
PHP-Code:
<form name="neu2.php" method="post" action="<?=$PHP_SELF?>"> 
    <p align="left"> 
    <input name="wort" type="text" id="wort" value="<?=$_POST[wort]?>" size="20"> 
    <input type="submit" name="action" value="suchen"> </p>
</form>


<?php 
if ($_POST[action]) {
    
$kennwort "sl2.txt"

    print 
"Die Koordinaten des Spielers '$wort' lauten: 

"
;
        
    
$file fopen($kennwort"r"); 
    while(
$line fgets($file5000)) {
        
$zeile++;
        if(
strstr($line"$_POST[wort]")) {
            echo 
"".nl2br($line)."";
        }
    }
    
fclose($file); 

?>
In diesem txt doc sind einträge durch %| getrennt. Jetzt möchte ich, das wenn ich den text durchsucht habe, und er ausgegeben wird, nicht

Eintrag1%|Eintrag2%|Eintrag3 steht sondern.
in einer Tabelle
1|2|3
Eintrag1 Eintrag2 Eintrag3.
Dafür verwendet man den glaube ich den befehl
$eintrag = explode("%|", trim($zeile)) ;
Doch verstehe ich jetzt nicht, wie das script jetzt aussehen müsste.
Denn
$eintrag = explode("#", trim($zeile)) ;
speichert die dateien in Arrys.
etwa
$eintrag[0]
$eintrag[1]
$eintrag[2]

Kann mir einer das script so umschreiben, das es so klappt, wie ich es erklärt habe???
Is ja kein langes script. sollte für einen könner nicht viel zeit beanspruchen.

Ich bedanke mich schon mal Herzlich.
MFG Marian


?>[/php]
Marian ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 13.10.2005, 12:33  
Gast
 
Beiträge: n/a
Standard

Zitat:
Kann mir einer das script so umschreiben, das es so klappt, wie ich es erklärt habe???
Und warum machst du das nicht selber? Du hast alles richtig beschrieben, jetzt musst du das nur noch in PHP umsetzen.
Zitat:
sollte für einen könner nicht viel zeit beanspruchen.
Stimmt, trotzdem mache ich es nicht, weil du das selber hinbekommen kannst, wenn du dir mal etwas Mühe gibst. Denn dieses Problem ist auch von Anfänger lösbar.

Gruß
phpfan
 
Alt 13.10.2005, 20:19  
Erfahrener Benutzer
 
Registriert seit: 25.06.2005
Beiträge: 228
Marian
Standard

Habe ich ja schon versucht.
Mein problem fängt bei dem echo befehl an.
echo "".nl2br($line)."";

foppen weist ja $file den text zu.
Dann ließt fgets den text aus.
dann wird der text durcuscht. Mit strstr.
Und dann muss ich die sache ja trennen.
Also
$eintrag = explode("%|", trim($zeile)) ;
Und jetzt kommt mein problem.
.nl2br($line). <-- was macht denn das???
Kann ich das dann weg lassen oder wie soll ich das machen?
Und an diese stelle dann die tabelle setzen in die das rein soll?

Hoffe du kannst noch en bischen Hilfe leisten. Dann schaffe ichs vieleicht selber.

MFG Marian
Marian ist offline  
Alt 13.10.2005, 20:46  
Erfahrener Benutzer
 
Registriert seit: 25.06.2005
Beiträge: 228
Marian
Standard

Im moment siehts so aus:

PHP-Code:
<form name="neu2.php" method="post" action="<?=$PHP_SELF?>"> 
    <p align="left"> 
    <input name="wort" type="text" id="wort" value="<?=$_POST[wort]?>" size="20"> 
    <input type="submit" name="action" value="suchen"> </p>
</form>


<?php 
if ($_POST[action]) {
    
$kennwort "sl2.txt"

    print 
"Die Koordinaten des Spielers '$wort' lauten: 

"
;
        
    
$file fopen($kennwort"r"); 
    while(
$line fgets($file5000)) {
        
$zeile++;
        if(
strstr($line"$_POST[wort]")) 
        {
        
$eintrag explode("%|"trim($line)) ;
            echo 
"<table border=\"1\"><tr>";
            echo 
"<td>$eintrag[0]</td>";
            echo 
"<td>$eintrag[1]</td>";
            echo 
"<td>$eintrag[2]</td>";
            echo 
"<td>$eintrag[3]</td>";
            echo 
"<td>$eintrag[4]</td>";
            echo 
"</tr></table>";
        }
    }
    
fclose($file); 

?>
Leider ist die ausgabe nicht die, die ich erwartet habe.
Wo liegt der fehler??
Marian ist offline  
Alt 14.10.2005, 07:59  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
if ($_POST['action']) {
if(
strstr($line$_POST['wort']))  
?>

maybe ^^
 
Alt 14.10.2005, 15:27  
Erfahrener Benutzer
 
Registriert seit: 25.06.2005
Beiträge: 228
Marian
Standard

Zitat:
PHP:

<?php
if ($_POST['action']) {
if(strstr($line, $_POST['wort']))
?>


maybe ^^
wass soll mir das jetzt sagen?
Marian ist offline  
Alt 14.10.2005, 15:40  
Gast
 
Beiträge: n/a
Standard

PHP-Code:
<?php
 
if(strstr($line$_POST['wort']) !== false)
?>
Gruß
phpfan
 
Alt 14.10.2005, 21:23  
Erfahrener Benutzer
 
Registriert seit: 25.06.2005
Beiträge: 228
Marian
Standard

Schon gut. Das alte script geht auch.
Habe nur ne kleine dummheit begangen, im Richtigen quellcode.

PHP-Code:
<?php  
if ($_POST[action]) { 
    
$kennwort "sl2.txt";  

    print 
"Die Koordinaten des Spielers '$wort' lauten: 

"

         
    
$file fopen($kennwort"r");  
    while(
$line fgets($file5000)) { 
        
$zeile++; 
        if(
strstr($line"$_POST[wort]"))  
        { 
        
$eintrag explode("%|"trim($zeile)) ; 
            echo 
"<table border=\"1\"><tr>"
            echo 
"<td>$eintrag[0]</td>"
            echo 
"<td>$eintrag[1]</td>"
            echo 
"<td>$eintrag[2]</td>"
            echo 
"<td>$eintrag[3]</td>"
            echo 
"<td>$eintrag[4]</td>"
            echo 
"</tr></table>"
        } 
    } 
    
fclose($file);  
}  
?>
Heist der fehler war hier:
$eintrag = explode("%|", trim($zeile)) ; <-- Falsch
$eintrag = explode("%|", trim($line)) ; <--Richtig

Problem gelöst.
MFG Marian
Marian ist offline  
Alt 14.10.2005, 23:23  
Gast
 
Beiträge: n/a
Standard

Weis ja nicht, geht es nicht einfacher das TXT-File mit file() einzulesen ?
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
Timestamp problem phrain PHP Tipps 2008 2 04.04.2008 09:41
Ich suche Hilfe bei einem Problem mit Navicat Chris1234 PHP Tipps 2008 1 09.02.2008 09:41
MATCH .... AGAINST ... Problem Denise Datenbanken 4 21.03.2007 20:05
join problem kid01 Datenbanken 4 28.11.2006 11:54
[Erledigt] Problem mit Backslash Patrick Schwarz PHP Tipps 2005-2 5 26.07.2005 09:54
mal wieder eine suche lomtas Datenbanken 0 12.07.2005 11:03
[Erledigt] Problem mit User/Group: nobody(99)/99 Server, Hosting und Workstations 3 09.07.2005 15:31
Suche E-Mail-Abhol-Script :: gegen Bezahlung !!! Beitragsarchiv 2 06.05.2005 18:06
problem mit preg_match PHP Tipps 2005 6 01.04.2005 16:25
[Erledigt] 1 suche und 1 problem HTML, Usability und Barrierefreiheit 1 09.02.2005 14:35
Problem Suche Array das nur den text in Variable ließt ... PHP Tipps 2005 2 09.01.2005 11:58
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
wort in explode suchen

Alle Zeitangaben in WEZ +2. Es ist jetzt 08:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.