SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #31  
Alt 05.07.2006, 23:38:57
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
AW: Übersetzungs Script

Dass immer noch alles zusammen geschrieben raus kommt, glaub ich ja nun nicht so richtig.
PHP-Code:
$string "Hallo, an alle in dieser Welt!"
$sprache "de";

setlocale(LC_CTYPE"de_DE"); //Dies in deinem Script notieren ansonsten werden dir auch alle Umlaute mit entfernt 

$entf[0] = "/\W/";                                        //entfernt alle Sonderzeichen aus deinem Satz, auch Leerzeichen   
    
$einf[0] = " ";                                            //setzt für alle entfernten Sonderzeichen ein Leerzeichen ein 
    
$entf[1] = "/( ){2,}/";                                    //ersetzt alle doppelten Leerzeichen 
    
$einf[1] = " ";                                            //durch ein Leerzeichen 
    
$entf[2] = "/( )$/";                                    //ersetzt ein Leerzeichen am Ende 
    
$einf[2] = "";                                            //durch nichts 
    
$entf[3] = "/ /";                                          //ersetzt alle Leerzeichen 
    
$einf[3] = "' and sprache <> '$sprache') or (wort = '"//mit diesem   

print $satz preg_replace($entf$einf$string); 
so sieht dann die Ausgabe aus:
Hallo' and sprache <> 'de') or (wort = 'an' and sprache <> 'de') or (wort = 'alle' and sprache <> 'de') or (wort = 'in' and sprache <> 'de') or (wort = 'dieser' and sprache <> 'de') or (wort = 'Welt

Wenn du vor dem letzten Durchlauf mehr als ein Leerzeichen zwischen den Worten hast würde dir ($einf[3]) genau so oft eingesetzt werden wie Leerzeichen vorhanden sind.
Du musst nicht zwingend Leerzeichen nehmen. Ein anderes Zeichen machts auch. Es muss halt eindeutig sein.
__________________
Grüße Andes
Mit Zitat antworten
  #32  
Alt 06.07.2006, 12:14:42
theaims theaims ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 70
AW: Übersetzungs Script

Das gleiche kommt bei mir auch raus. Aber wenn ich halt alles in das formular feld eingebe kommt das raus:

Wenn ich Hallo Ich eingebe kommt unten

Hallo' and sprache <> 'en') or (wort = 'IchHelloi

raus. Wie schaffe ich es damit es richtig da steht?
Mit Zitat antworten
  #33  
Alt 06.07.2006, 16:34:56
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
AW: Übersetzungs Script

Also warum das so ausgegeben wird, müsstest du eigentlich selbst wissen.

[Hallo' and sprache <> 'en') or (wort = 'Ich] Dieser Teil wird ausgegeben, weil du irgendwo die Variable $satz ausgibst. [Helloi] Warum dieser Teil zusammen geschrieben ist hab ich dir schon auf der ersten Seite erklärt.
Du musst natürlich bei deiner Ausgabe ein Leerzeichen einfügen.
PHP-Code:
while($row mysql_fetch_object($query))   {  
        echo 
$row->wort
 }

//so zum Bsp.
while($row mysql_fetch_object($query))   {  
        echo 
$row->wort." "
 } 
Woher soll der Browser wissen, dass es zwei Worte sind. PHP gibt nur das aus was du angibst. Dass es für einen Browser verständlich ist, darum musst du dich schon selbst kümmern.
__________________
Grüße Andes
Mit Zitat antworten
  #34  
Alt 06.07.2006, 19:59:46
theaims theaims ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 70
AW: Übersetzungs Script

hm ich gebe es aber nicht aus.

und er beachtet jetzt die angabe der sprache nicht mehr. er zeigt beide wörter an deutsch und english

ab zwei oder mehr wörtern kommt dann das oben genannte.



PHP-Code:
$string $_POST['wort'];
$sprache $_POST['sprache'];

setlocale(LC_CTYPE"de_DE"); //Dies in deinem Script notieren ansonsten werden dir auch alle Umlaute mit entfernt 

$entf[0] = "/\W/";                                        //entfernt alle Sonderzeichen aus deinem Satz, auch Leerzeichen   
    
$einf[0] = " ";                                            //setzt für alle entfernten Sonderzeichen ein Leerzeichen ein 
    
$entf[1] = "/( ){2,}/";                                    //ersetzt alle doppelten Leerzeichen 
    
$einf[1] = " ";                                            //durch ein Leerzeichen 
    
$entf[2] = "/( )$/";                                    //ersetzt ein Leerzeichen am Ende 
    
$einf[2] = "";                                            //durch nichts 
    
$entf[3] = "/ /";                                          //ersetzt alle Leerzeichen 
    
$einf[3] = "' and sprache <> '$sprache') or (wort = '"//mit diesem   

print $satz preg_replace($entf$einf$string);

   
$sql "SELECT wort FROM uebersetzer WHERE sprache = '$sprache' AND id = ANY (SELECT id FROM uebersetzer WHERE (wort = '$satz' AND sprache <> '$sprache'))"
    
$query mysql_query($sql) or die(mysql_error());
if(
mysql_num_rows($query) > 0) {   
       while(
$row mysql_fetch_object($query))   {  
        echo 
$row->wort." "
 }  
       } 

Geändert von theaims (06.07.2006 um 20:01:42 Uhr)
Mit Zitat antworten
  #35  
Alt 06.07.2006, 20:47:48
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
AW: Übersetzungs Script

Zitat:
Zitat von theaims
hm ich gebe es aber nicht aus.
Und was bedeutet deiner Meinung nach 'print' vor $satz = preg_replace.....?
__________________
Grüße Andes
Mit Zitat antworten
  #36  
Alt 06.07.2006, 22:12:43
theaims theaims ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 70
AW: Übersetzungs Script

achso ja. und äh er gibt die wörter so aus wie sie in der db stehen. wie bekomme ich das in das er die reihenfolge hat wie ich es eingebe?

und wie schaffe ich es das ich so viele leerzeichen machen kann wie ich will? momentan nimmt er nur eines. und satzzeichen nimmt er immer noch nicht. wenn ich oben ! ausgebe kommt unten nichts dafür raus.

Geändert von theaims (06.07.2006 um 22:13:38 Uhr)
Mit Zitat antworten
  #37  
Alt 06.07.2006, 22:39:42
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
AW: Übersetzungs Script

Wie du deine Ausgabe steuern kannst hab ich dir hier schon mal erklärt.
http://www.selfphp.de/forum/showpost...5&postcount=27
Musst dir halt was einfallen lassen wie du die Satzzeichen von den Wörtern getrennt bekommst. Damit sie als einzelner Wert im Array enthalten sind.

Mehre aufeinander folgende Leerzeichen kannst du mit geschützten Leerzeichen ausgeben oder du gibst deinen Text als Präformatierter Text aus.
__________________
Grüße Andes
Mit Zitat antworten
  #38  
Alt 06.07.2006, 23:55:34
theaims theaims ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 70
AW: Übersetzungs Script

Also um die zeichen zu trennen etwas so?

PHP-Code:
$entf[4] = "!";                                    
    
$einf[4] = "!"
Oder mit preg split?
Mit Zitat antworten
  #39  
Alt 07.07.2006, 00:53:07
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 56
Beiträge: 930
AW: Übersetzungs Script

Die Bearbeitung der Eingabe für ein Array muss gesondert erfolgen.
Dies könnte zum Bsp. so aussehen.


PHP-Code:
EingabeDas ist ein Satzin dem Satz-Zeichen vorkommen.

//Eingabe für Array bearbeiten
$aentf[0] = "/(\W)/";    $aeinf[0] = " $1 ";     //Allen Sonderzeichen ein Leerzeichen vor und nachstellen
$aentf[1] = "/( ){2,}/"$aeinf[1] = " ";        //Doppelte Leerzeichen auf eins reduzieren
$aentf[2] = "/( )$/";    $aeinf[2] = "";        //Leerzeichen am Satzende entfernen
$eing_string preg_replace($aentf$aeinf$string);

ErgebnisDas ist ein Satz in dem Satz Zeichen vorkommen .

//Überarbeitete Eingabe in Array zerlegen
$eing_array explode(" "$eing_string);

Array
(
    [
0] => Das
    
[1] => ist
    
[2] => ein
    
[3] => Satz
    
[4] => ,
    [
5] => in
    
[6] => dem
    
[7] => Satz
    
[8] => -
    [
9] => Zeichen
    
[10] => vorkommen
    
[11] => .
 ) 
So wie du es schreibst
PHP-Code:
$entf[4] = "!";                                     
    
$einf[4] = "!"
würdest du nur ein Ausrufezeichen gegen ein Ausrufezeichen ersetzen.
__________________
Grüße Andes

Geändert von Andes (07.07.2006 um 00:55:42 Uhr)
Mit Zitat antworten
  #40  
Alt 07.07.2006, 10:45:11
theaims theaims ist offline
Anfänger
 
Registriert seit: Jun 2006
Beiträge: 70
AW: Übersetzungs Script

Brauche ich dann diesen Teil noch?

PHP-Code:
$entf[0] = "/\W/";                                        //entfernt alle Sonderzeichen aus deinem Satz, auch Leerzeichen   
    
$einf[0] = " ";                                            //setzt für alle entfernten Sonderzeichen ein Leerzeichen ein 
    
$entf[1] = "/( ){2,}/";                                    //ersetzt alle doppelten Leerzeichen 
    
$einf[1] = " ";                                            //durch ein Leerzeichen 
    
$entf[2] = "/( )$/";                                    //ersetzt ein Leerzeichen am Ende 
    
$einf[2] = "";                                            //durch nichts 
    
$entf[3] = "/ /";                                          //ersetzt alle Leerzeichen 
    
$einf[3] = "' and sprache <> '$sprache') or (wort = '"//mit diesem 
Mit Zitat antworten
Antwort


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

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 aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fehler in Script das Inhalt einer .txt Datei (HTML Sourcecode) in Datei schreiben sol RookieXL2 PHP für Fortgeschrittene und Experten 2 08.06.2007 23:58:33
Daten aus SQL datenbank nach php script ausführung weg Kaldoran PHP Grundlagen 3 23.06.2006 22:23:01
Strings per PHP an ein anderes Script übergeben ? quirrly PHP Grundlagen 18 23.12.2004 15:20:39
Wichtig: Upload Script auf FTP-Server und dessen Sicherheit? Supernova PHP für Fortgeschrittene und Experten 5 21.07.2004 11:41:52
Suche "Länder" Script.. Nomad PHP für Fortgeschrittene und Experten 15 25.02.2003 23:00:25


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:46:29 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt