WinFuture-Forum.de: [php] Function Und String - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

[php] Function Und String


#1 Mitglied ist offline   hasch 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.790
  • Beigetreten: 28. Januar 04
  • Reputation: 0
  • Wohnort:Localhost
  • Interessen:Ach so viele ...

geschrieben 15. Februar 2006 - 14:47

Hallo,
habe folgendes Problem zu diesem Code:
public function news($titel, $text, $zeit, $id)					
{
	$i = 0;
	$titel = explode('##', $titel);
		 $text = explode('##', $text);
	$zeit = explode('##', $zeit);
	$id = explode('##', $id);
				  while($i < 3)
		{
				 $string_vorlage=preg_match("#\[head\](.*?)\[\/head\]#is", $this->inhalt, $treffer);				$string_vorlage=preg_replace("#\[head\](.*?)\[\/head\]#is", "\\1", $treffer[0]);
				if(strlen($titel[$i]) > 45)										
					$titel[$i] = str_replace($titel[$i], "<a href='".ROOT."index.php?section=news&id=".$news_id[$i]."' class='l_weiter' title='".$titel[$i]."'>".substr($titel[$i], 0, 45)."..."."</a>", $titel[$i]);
				if(strlen($text[$i]) > 200)														$text[$i] = str_replace($text[$i], substr($text[$i], 0, 200).'...', $text[$i]);
					   $ersetz = str_replace('{titel}', $titel[$i], $string_vorlage);
					   $ersetz = str_replace('{text}', $text[$i], $string_vorlage);
					   $string=$string.$ersetz;
					   $i++;
			 }
			
	$this->inhalt=preg_replace("#\[head\](.*?)\[\/head\]#is", $string, $this->inhalt);
}


Und zwar soll dieser Code Platzhalter in der Form ersetzen und dies 3x, damit 3 News dargestellt werden können...

Zitat

[head]{titel}<br>{text}[/head]


So dann treten folgende Probs auf:
(1) Es werden die {titel} Platzhalter garnicht ersetzt -> $news_titel ist aber belegt...
(2) Es werden nur 2x der {text} Platzhalter ersetzt, es ist aber $news_text mit 3x Text gefüllt...

Woran kann dies liegen? Fehler im Code?

Dieser Beitrag wurde von hasch bearbeitet: 15. Februar 2006 - 14:49

0

Anzeige



#2 Mitglied ist offline   _seym. 

  • Gruppe: aktive Mitglieder
  • Beiträge: 52
  • Beigetreten: 12. Februar 06
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 17. Februar 2006 - 18:53

hi.
aus welcher klasse rufst du das ganze denn auf, bzw. was steht in $this->inhalt?
kannst du mal einen beispielfunktionsaufruf (also mit stringinhalten) posten?

mfg,
_seym.
mfg,
_seym.
0

#3 Mitglied ist offline   flo 

  • Gruppe: aktive Mitglieder
  • Beiträge: 7.955
  • Beigetreten: 14. November 04
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 17. Februar 2006 - 18:56

Zitat

(2) Es werden nur 2x der {text} Platzhalter ersetzt, es ist aber $news_text mit 3x Text gefüllt...


Setz mal in der schleife i < 3 auf i < 4, dann sollten 3 dargestellt werden
0

#4 Mitglied ist offline   hasch 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.790
  • Beigetreten: 28. Januar 04
  • Reputation: 0
  • Wohnort:Localhost
  • Interessen:Ach so viele ...

geschrieben 18. Februar 2006 - 10:20

Danke, nein der Fehler lag daran, dass in einem Text viele '########' vorhanden waren und die Texte aber durch '#' getrennt wurden, dies musste ich nur ändern, damit es wieder bestens funktioniert.

Trotzdem danke! :D
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0