Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]Problem z plikiem .tpl przy tworzeniu szablonu allegro
umnierazniej
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 8.05.2018

Ostrzeżenie: (0%)
-----


Mam problem ze skryptem który wysyła dane przez allegro webapi (kilka plików). Po wprowadzeniu nowych wymagań przez allegro skrypt do wystawiania aukcji przestał działać. Po zmianie szablonu działa tylko wtedy kiedy dane do opisu są zapisane na stałe (drugi przykład). Przy zastosowaniu zmiennej (tekst) nie działa mimo że ten opis jest "identyczny" w obu przypadkach. Poniżej jest szablon tpl który został sformatowany do nowych wymagań opisu i jest wysyłany z innymi danymi przy wystawianiu aukcji.

Plik *.tpl
Nie działa *** "content": "<p>{$lato}</p>" ***:
{
"sections": [{
"items": [{
"type": "TEXT",
"content": "<p>Canon 77D do jest najlepszy aparat w tej kategorii.</p>"
}]
},{
"items": [{
"type": "TEXT",
"content": "<p>{$lato}</p>"
}]
}]
}

Tutaj jest kod z pliku Allegro.php który podmienia dane:
$lato = str_replace(('{$lato}'),$description,file_get_contents($vals['template']));
// $description = htmlspecialchars($description);
// echo $description;
// echo htmlspecialchars($description);
// echo addcslashes($description,'A..z');
$fields[] = array(
'fid' => 341, // Był 24 Opis
'fvalueString' => $lato,
'fvalueInt' => 0,
'fvalueFloat' => 0,
'fvalueImage' => 0,
'fvalueDatetime' => 0,
'fvalueDate' => '',
'fvalueRangeInt' => array(
'fvalueRangeIntMin' => 0,
'fvalueRangeIntMax' => 0),
'fvalueRangeFloat' => array(
'fvalueRangeFloatMin' => 0,
'fvalueRangeFloatMax' => 0),
'fvalueRangeDate' => array(
'fvalueRangeDateMin' => '',
'fvalueRangeDateMax' => '')
);

Drugi przykład który działa
Plik *.tpl
Działa *** "content": "<p>To jest naprawde cudowny aparat dlugi</p>" ***:
{
"sections": [{
"items": [{
"type": "TEXT",
"content": "<p>Canon 77D do jest najlepszy aparat w tej kategorii.</p>"
}]
},{
"items": [{
"type": "TEXT",
"content": "<p>To jest naprawde cudowny aparat dlugi</p>"
}]
}]
}


Czy ktoś mam jakiś pomysł dlaczego jeden działa a drugi nie działa? Po sprawdzeniu używając "echo" wyglądają na "identyczne"?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 561
Pomógł: 6315
Dołączył: 27.12.2004




Uzywaj bbcode dla wstawianych kodow na forum.

Ja tu widze powazny blad w twoim szablonie.
Uzywasz w nim { } do wygenerowania json ale to sa przeciez znaki zastrzezone w smarty. Skoro ci to dziala, to pewnie przed tym dales dyrektywe ktora wylacza smartowe {}. Jesli tak, nic dziwnego ze {$lato} ci nie dziala skoro wlaczyles te dyrektywe.
Musisz na czas wlozenia {$lato} wylaczyc spowrotem te dyrektywe.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 15:27