Affilinator Forum
Partnerprogramm Skript kostenlos testen


Zurück   Affilinator Forum > Kundenforum > PHP Programmierung

PHP Programmierung Tipps und Fragen zum PHP Programmierung.

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 15.10.2009, 21:26
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Standard Eigene Funktion Werte übergeben

Hallo,

ich möchte gerne eine eigene Funktion beispielsweise in die searchProducts.html einfügen:
...
{assign var=href value={$smarty.const.BASE_URL}no-index/forward.php?link={encode str=$href}}
...
{php}
function test($param)
{
return $param;
}
{/php}
...
{php}
$tpl_vars = $this->get_template_vars(href);
echo test();
{/php}

Leider funktioniert die Syntax von Smarty so nicht.

Wir kann ich den verketteten String an die PHP-Funktionen "test" übergeben?

Danke
Mit Zitat antworten
  #2  
Alt 15.10.2009, 21:29
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Standard

sorry- sollte heißen:

echo test($param);
Mit Zitat antworten
  #3  
Alt 15.10.2009, 22:17
Benutzerbild von AxelK
AxelK AxelK ist gerade online
Administrator-Technik
 
Registriert seit: 07.11.2005
Ort: Niefern
Beiträge: 992
Standard

Hi,

hier das einfache Variablenhandling in Smarty:
Code:
{assign var='amago' value='1'}

{php}
  // Variable aus Template übernehmen
  $amago = $this->get_template_vars('amago'); 
  echo $amago;
  $bmago=2;
  // Variable in Template übergeben
  $this->_tpl_vars['bmago'] = $bmago; 
{/php}

{$bmago}
Gruß Axel
Mit Zitat antworten
  #4  
Alt 15.10.2009, 22:25
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Standard

Hallo Axel,

Danke für die schnelle Antwort!

Mein Problem ist konkret die richtige Syntax bei

{assign var=href value={$smarty.const.BASE_URL}no-index/forward.php?link={encode str=$href}}

Hier ist das Verketten des Strings das eigentliche Problem. Das einfache Beispiel {assign var='amago' value='1'} hilft mir leider noch nicht weiter.

Viele Grüße
Daniel
Mit Zitat antworten
  #5  
Alt 15.10.2009, 22:34
Benutzerbild von AxelK
AxelK AxelK ist gerade online
Administrator-Technik
 
Registriert seit: 07.11.2005
Ort: Niefern
Beiträge: 992
Standard

Hi Daniel,

sollte damit machbar sein. Bei deinem Code-Beispiel ist irgendwie nicht klar, was du genau machen willst. Baue mal ein konkretes Beispiel.

Gruß Axel
Mit Zitat antworten
  #6  
Alt 15.10.2009, 22:55
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Standard

Hallo Axel,

ich will z.B. einen Href-Link durchparsen und verändern.

z.B.
href="http://www.mydomain.de/find/all/0/-/0/-/20/brille.html"

Wird erzeugt aus dem Smarty-Code
href="{$smarty.const.BASE_URL}{$smarty.const.SEARC H_MODREWRITE}/{$where_to_search}/{$pricemin|default:'0'}/{$pricemax|default:'-'}/{if $ShopID}{$ShopID}{else}0{/if}/{if $CategoryID}{$CategoryID}{else}-{/if}/{$it}/{$keywords|smarty_search_urlencode}{if $srt}/{$srt}/{$dir}{/if}.html"

Wie kann ich den dynamischen String "http://www.mydomain.de/find/all/0/-/0/-/20/brille.html" mit Assign einer Variablen zuweisen? Der String (http://www.mydomain.de/...) wird aus mehreren Smparte Anweisungen zusammengesetzt ({$smarty.const.SEARCH_MO...{/if}.html).

Danke und Grüße
Daniel
Mit Zitat antworten
  #7  
Alt 15.10.2009, 23:28
Benutzerbild von AxelK
AxelK AxelK ist gerade online
Administrator-Technik
 
Registriert seit: 07.11.2005
Ort: Niefern
Beiträge: 992
Standard

Hi Daniel,

hat ewig gedauert, bis ich verstanden habe, was du meinst.
Schau mal, vielleicht hilft dir der Code weiter:

Code:
// hier wird zuvor eine Funktion auf ein Hilfsvariable angewendet
{assign var='rss_Keywords_urlencode' value=$news_data.news_block.rss_Keywords|urlencode}
{assign var='rss_search' value="`$smarty.const.BASE_URL`search.php?PriceMin=`$news_data.news_block.rss_pricemin`&PriceMax=`$news_data.news_block.rss_pricemax`&ShopID=`$news_data.news_block.rss_ShopID`&CategoryID=`$news_data.news_block.rss_CategoryID`&Keywords=`$rss_Keywords_urlencode`&PageSize=`$news_data.news_block.rss_results`&srt=`$news_data.news_block.rss_orderby`&dir=`$news_data.news_block.rss_orderdir`&rss=1"}
Gruß Axel
Mit Zitat antworten
  #8  
Alt 18.10.2009, 16:36
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Standard

Hi Axel,

Funktioniert einwandfrei!

Was mach aber wenn die Smarty-Anweisungen Funktionen erhalten?

z.B.
{$smarty.const.BASE_URL}no-index/forward.php?link={encode str=$href}
=>
{assign var='hrefArr' value="`$smarty.const.BASE_URL`no-index/forward.php?link=??????????" }

Danke und Viele Grüße
Daniel
Mit Zitat antworten
  #9  
Alt 18.10.2009, 17:07
Benutzerbild von AxelK
AxelK AxelK ist gerade online
Administrator-Technik
 
Registriert seit: 07.11.2005
Ort: Niefern
Beiträge: 992
Standard

Hi,

dann doch lieber noch einfacher mit capture:
Code:
{capture name=link}{$smarty.const.BASE_URL}{$smarty.const.SEARC H_MODREWRITE}/{$where_to_search}/{$pricemin|default:'0'}/{$pricemax|default:'-'}/{if $ShopID}{$ShopID}{else}0{/if}/{if $CategoryID}{$CategoryID}{else}-{/if}/{$it}/{$keywords|smarty_search_urlencode}{if $srt}/{$srt}/{$dir}{/if}.html{/capture}
Code:
<a href="{$smarty.capture.link}">Link</a>
Gruß Axel
Mit Zitat antworten
  #10  
Alt 18.10.2009, 23:14
Benutzerbild von DanielM
DanielM DanielM ist offline
Neuer Benutzer
 
Registriert seit: 27.09.2009
Beiträge: 20
Daumen hoch

Jepp das ist es!

Danke Dir!
Viele Grüße
Daniel
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
funktion , smarty , string , verketten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Newsfeed an twitterfeed übergeben Michael_M News Modul 27 08.10.2009 09:26
Frage zur Funktion der Merkliste ChristianT Skript Installation & Upgrades 4 15.02.2009 18:07
Variablen aus URL übergeben StefanB Affilinator - Wie geht das ? 4 03.02.2008 12:07
php include Funktion und Smarty KlausL Affilinator - Wie geht das ? 7 27.11.2006 18:52
Funktion Startdatum im Newsmodul JürgenK Fehlersuche und Probleme 0 28.08.2006 23:02



Alle Zeitangaben in WEZ +2. Es ist jetzt 15:11 Uhr.


Powered by vBulletin® Version 3.8.0 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
SEO by vBSEO 2.3.2
Affilinator GmbH