 |
| Hinweise |
Willkommen im TP-Hilfe-Forum!Dies ist ein Forum zu den Themen Photoshop, Dreamweaver, Flash, Selbständigkeit und mehr, in dem Du Hilfe, Anleitung oder eine Lösung zu Deinen Problemen erhältst. Aktuell bist Du in unseren Foren als Gast mit reinen Leserechten unterwegs. Wenn Du Dich registrierst, kannst Du eigene Themen verfassen, deine Frage stellen und privat mit anderen TPlern kommunizieren. Weitere Foren werden zugänglich, und Du wirst – falls gewünscht – per Mail über neue Beiträge informiert. Die Registrierung ist schnell und kostenlos. Sollten bei der Registrierung Fragen auftauchen, reicht ein Klick in unsere Hilfe - Häufig gestellte Fragen oder eine kurze Mitteilung an das Support-Team. Viel Spaß bei Traum-Projekt.com |
10.10.2004, 00:36
|
#1
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
For Schleife für Smarty
Hallo,
ich habe eine FOR-Schleife und möchte das mit Smarty ausgeben. Es habdelt sich hierbei um eine Seitenaufteilung...
PHP-Code:
$aktuelle_seite = $_GET['page'];
$anzahl_der_anzuzeigenenden_seiten = 3;
$Sites = $count_pages;
$linked = "thread.php?threadid=$threadid&page";
for($i = max($aktuelle_seite-$anzahl_der_anzuzeigenenden_seiten,1);$i<=min($aktuelle_seite+$anzahl_der_anzuzeigenenden_seiten,$Sites);$i++){
if($i == $aktuelle_seite){
$Sub_Body .= "<font color=\"#FFFFFF\">[".$i."]</font> ";
}
else{
$Sub_Body .= "<a ' href='".$linked."=".$i."' style=\"color: #FFFFFF;\">".$i."</a> ";
}
}
Wie mach ich das ins Smartytemplate nachher?
Danke im Vorraus,
SkaTeR
|
|
|
10.10.2004, 05:05
|
#2
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
zb mit plugin
PHP-Code:
<?php
function smarty_function_seitenAufteilung($params, &$smarty)
{
$aktuelle_seite = $params[aktuelle_seite];
$anzahl_der_anzuzeigenenden_seiten = 3;
$Sites = $params[sites];
$linked = $params[linked];
for($i = max($aktuelle_seite-$anzahl_der_anzuzeigenenden_seiten,1);$i<=min($aktuelle_seite+$anzahl_der_anzuzeigenenden_s eiten,$Sites);$i++){
if($i == $aktuelle_seite){
$Sub_Body .= "<font color=\"#FFFFFF\">[".$i."]</font> ";
}
else{
$Sub_Body .= "<a ' href='".$linked."=".$i."' style=\"color: #FFFFFF;\">".$i."</a> ";
}
}
}
?>
speichern in smarty/plugins/ als function.seitenAufteilung.php
und im template mit
HTML-Code:
{seitenAufteilung linked="thread.php?threadid=$threadid&page" aktuelle_seite=$page sites=$count_pages}
aufrufen
die Parameter die du übergibst, die variabel sind, musst du hald natürlich erst noch aus der php ans template übergeben
is übrigens nicht getestet aber es sollte funsen (und vielleicht gibts auch noch ne bessere lösung, aber ka  )
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
10.10.2004, 10:25
|
#3
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Ja na gut plausibel nur wie soll ich es ins Template bekommen?
|
|
|
10.10.2004, 19:57
|
#4
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
Zitat:
|
Zitat von SkaTeR
Ja na gut plausibel nur wie soll ich es ins Template bekommen?
|
hä? wo is genau dein prob?
btw: bei der fkt fehlt noch ein
PHP-Code:
return $Sub_Body;
(hab ich vergessen  )
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
11.10.2004, 21:13
|
#5
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Zitat:
|
Zitat von GodfatherDeluxe
hä? wo is genau dein prob?
btw: bei der fkt fehlt noch ein
PHP-Code:
return $Sub_Body;
(hab ich vergessen  )
|
Okay ich mein im Template muss ja nachher die Seitenanzahl stehen.
Geb ich das da auch mit for bzw. foreach aus oder eine einfacher Loop mit {section} 
|
|
|
11.10.2004, 23:52
|
#6
|
|
TP-Supporter
Registriert seit: Sep 2003
Ort: Wien, Österreich
|
die seitenanzahl hast du doch in $count_pages gespeichert oder?!
brauchst du ja nur ausgeben?!
oder hab ich was falsch verstanden 
__________________
Java != JavaScript
"He who makes a beast of himself gets rid of the pain of being a man."
Dr. Johnson
|
|
|
12.10.2004, 01:05
|
#7
|
|
TP-Senior
Registriert seit: Jun 2004
Ort: leipzig
|
__________________
BeCreated - Geduld und Zeit für Ihre Wünsche
|
|
|
19.11.2004, 12:25
|
#8
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Hm damit lässt sich ja nur ein Block wiederholen.
Es sollte ja so sein, dass das wie oben dann steht.
erste Seite [1] [2] [3] letzte Seite
Mit der Funktion kann ich nur etwas mehrmals ausgeben lassen.
|
|
|
23.11.2004, 20:27
|
#9
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Sorry für den Push, aber hat denn niemand eine Idee?
Das wär super wichtig wenn das Feature fertig würde.
Ich brauch ja auch nur einen Ansporn, den PHP-Code hab ich ja, nur nicht für Smarty -_-
|
|
|
24.11.2004, 00:58
|
#10
|
|
TP-Senior
Registriert seit: Jun 2004
Ort: leipzig
|
du kennst section bzw. foreach? gut. damit durchläufst du ein an das template übergebenen array, welcher die seitenzahlen/links auf die seiten enthält.
ansonsten zeig noch mal bitte dein aktuelles php.
__________________
BeCreated - Geduld und Zeit für Ihre Wünsche
|
|
|
24.11.2004, 12:54
|
#11
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Das bisherige Script hängt im 1. Post oben an.
Das funktioniert aber nur ohne Templates.
|
|
|
25.11.2004, 00:01
|
#12
|
|
TP-Senior
Registriert seit: Jun 2004
Ort: leipzig
|
so, nur für dich:
PHP-Code:
$aktuelle_seite = $_GET['page'];
$anzahl_der_anzuzeigenenden_seiten = 3;
$seitenarray = array();
for( $i = 1; $i <= $anzahl_der_anzuzeigendenseiten ; $i++ ) {
$seitenarray[][ 'seite' ] = $i;
}
$smarty->assign( 'array' , $seitenarray );
$smarty->assign( 'actsite' , $aktuelle_seite );
im template:
Code:
{section name=seiten loop=$array}
{if $array[seiten].seite == $actsite}<font color="#FFFFFF">[ $actsite ]</font>
{else}
<a href="thread.php?threadid=$threadid&page={$array[seiten].seite}" style="color: #FFFFFF;">{$array[seiten].seite}</a>
{/if}
{/section}
so, das ist jetzt ungetestet, müsste aber klappen.
__________________
BeCreated - Geduld und Zeit für Ihre Wünsche
|
|
|
25.11.2004, 19:01
|
#13
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Es funktioniert nicht  ((
Es wird nichts ausgegeben, habe auch mal probiert in der section ein strip einzubauen, auch ohne Erfolg.
|
|
|
26.11.2004, 00:40
|
#14
|
|
TP-Senior
Registriert seit: Jun 2004
Ort: leipzig
|
hast du auch in der php datei noch
$smarty->display( "name_des_templates.tpl.html" );
eingefügt? oder wie oder was gibt "keine ausgabe" ?
__________________
BeCreated - Geduld und Zeit für Ihre Wünsche
|
|
|
26.11.2004, 13:18
|
#15
|
|
TP-Senior
Registriert seit: Oct 2003
Ort: NRW
|
Zitat:
|
Zitat von feuervogel
hast du auch in der php datei noch
$smarty->display( "name_des_templates.tpl.html" );
eingefügt? oder wie oder was gibt "keine ausgabe" ?
|
Na klar hab ich das gemacht.
Es wird schon das Template ausgegeben, nur die Seitenaufteilung fehlt, dort wird rein garnix ausgegeben.
Das display() ist auch nach dem Code, daran liegts nicht..
|
|
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
Thema durchsuchen |
|
|
|
| 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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 17:04 Uhr.
|
 |