# php &amp; fopen in tpl

**URL:** <https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868>\
**Category:** Allgemein\
**Created:** [24. Januar 2016 um 16:36 UTC](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868 "2016-01-24T16:36:03Z")\
**Posts on this page:** 4\
**Page:** 2

<div class="post-metadata">

**Author:** ![konsi](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@konsi](https://forum.shopware.com/u/konsi)\
**Post date:** [6. Februar 2016 um 15:53 UTC](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868/21 "2016-02-06T15:53:45Z")

</div>

Okay also ich denke ich bin einen ticken weiter gekommen. Ich habe nochmal komplett von vorne angefangen und erstmal ohne der ordernumber.

Sprich ich habe file\_get\_contents mit einem direkt Link einfach genommen, dazu dann noch strip\_tags und bekomme dann schonmal das richtige Ergebnis, nur leider mit den ganzen body und css tags noch.

sieht dann ungefähr so aus:

```
body { color: #333; height: 14px; width: 107px; } a { color: #333; } 3 

```

die 3 am Ende ist dann das richtige Ergebniss für mich, nur warum filtert er mir nicht den rest raus?!

&nbsp;

ohje ohje… hat ja echt lange gedauert, aber ich habs hinbekommen… damit bekomme ich ein Ergebniss:

```
$data = file_get_contents('http://domain.de/colli.php?artnr=1234');
$data = preg_replace("/]*>(.*?)<\\/style>/s", "", $data);
$data = strip_tags($data);

 
         return $data;</code></pre>

<p> </p>

<p>jetzt fehlt mir nur noch die orderNumber in dem Link...</p>
```

---

<div class="post-metadata">

**Author:** ![konsi](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@konsi](https://forum.shopware.com/u/konsi)\
**Post date:** [6. Februar 2016 um 19:25 UTC](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868/22 "2016-02-06T19:25:29Z")

</div>

Ich habe es jetzt endlich hinbekommen! Unfassbar wie schwer ich mich damit getan habe, ohje… Vielen Dank Daniel, es hat alles geklappt wie du es geschrieben hast.

Falls es jemand nachmachen will, hier meine Lösung:

```
function smarty_function_cbm($params, Smarty_Internal_Template $template)
{

$orderNumber = $params['number'];
        

 if (!$orderNumber) {
        throw new \RuntimeException("No number given");
    }
    
$data = file_get_contents("http://domain.de/cbm.php?artnr=$orderNumber");
$data = preg_replace("/]*>(.*?)<\\/style>/s", "", $data);
$data = strip_tags($data);

 
         return $data;

}
?></code></pre>

<p>und in der .tpl:</p>

<pre>
<code> {block name='frontend_detail_data_attributes_attr5'}
                                        <li class="base-info--entry entry-attribute">
                                            <strong class="entry--label">
                                                {s name="DetailCbm"}Cbm{/s}:
                                            </strong>
    
                                            <span class="entry--content">
                                                         {cbm number={$sArticle.mainVariantNumber}} </span>
                                            </span>
                                        </li>
                                {/block}</code></pre>

<p> </p>
```

---

<div class="post-metadata">

**Author:** ![konsi](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@konsi](https://forum.shopware.com/u/konsi)\
**Post date:** [15. Februar 2016 um 20:49 UTC](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868/23 "2016-02-15T20:49:36Z")

</div>

Ich muss mich doch nochmal melden, ich habe ein Problem bei dem ganzen, leider…

manchmal werden mir durch die ordernumber bei der Abfrage von der externen Seite zwei werte ausgegeben, kann mir einer sagen wie ich das so verpacken könnte das immer nur das erste Ergebnis angezeigt wird?

habe an preg\_match gedacht, aber kriege das null hin…

ansonsten würde es noch gehen wenn ich in der .tpl die variable kürzen würde, aber auch das kriege ich nicht hin irgendwie ☹ wie kann ich denn hier: {colli number={$sArticle.mainVariantNumber}}&nbsp;&nbsp; ein truncate einbauen?

---

<div class="post-metadata">

**Author:** ![konsi](https://avatars.discourse-cdn.com/v4/letter/k/eada6e/32.png) [@konsi](https://forum.shopware.com/u/konsi)\
**Post date:** [23. Februar 2016 um 16:50 UTC](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868/24 "2016-02-23T16:50:58Z")

</div>

Hat niemand eine Idee? Mir fällt leider nichts weiter dazu ein 😕

[Vorherige Seite](https://forum.shopware.com/t/php-amp-fopen-in-tpl/33868.md?page=1)
