Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]jak zrobić to za pomocą funkcji
Forum PHP.pl > Forum > Przedszkole
pela222
Cześć,

Czy mogę prosić o pokazanie jak zmienić powtarzany przeze mnie trzykrotnie kod i zapisać w funkcji:

  1. if ($documentData['f']['comCoAL']['selected'] == 'yes') {
  2. $TBS->MergeBlock('comCoAL', $documentData['f']);
  3. } else {
  4. $TBS->MergeBlock('comCoAL', []);
  5. }
  6.  
  7. if ($documentData['f']['comCL']['selected'] == 'yes') {
  8. $TBS->MergeBlock('comCL', $documentData['f']);
  9. } else {
  10. $TBS->MergeBlock('comCL', []);
  11. }
  12. if ($documentData['f']['comCH']['selected'] == 'yes') {
  13. $TBS->MergeBlock('comCH', $documentData['f']);
  14. } else {
  15. $TBS->MergeBlock('comCH', []);
  16. }


Zrobiłem takie coś:

  1. function mergeLetter($prefix){
  2. if ($documentData['f'][$prefix]['selected'] == 'yes') {
  3. $TBS->MergeBlock($prefix, $documentData['f']);
  4. } else {
  5. $TBS->MergeBlock($prefix, []);
  6. }
  7. }
  8. mergeLetter('comCoAL');
  9. mergeLetter('comCL');
  10. mergeLetter('comCH');


Dziękuję jak zawsze za wyrozumiałość i czekam na merytoryczne wskazówki. Thx.
viking
Poczytaj o zasięgu zmiennych. Tu korzystasz z $documentData której nie ma w funkcji. Musisz ją też przekazać.
nospor
To samo z obiektem $TBS

I wlaczy wyswietlanie BLEDOW a bedziesz to wszystko widzial na ekranie
pela222
Cytat(viking @ 19.10.2020, 11:42:38 ) *
Poczytaj o zasięgu zmiennych. Tu korzystasz z $documentData której nie ma w funkcji. Musisz ją też przekazać.


Tak też kombinowałem...ale dobiero jak dodałem $TBS to poszło. thx. ..
  1. function mergeLetter($TBS, $documentData, $prefix){
  2. if ($documentData['f'][$prefix]['selected'] == 'yes') {
  3. $TBS->MergeBlock($prefix, $documentData['f']);
  4. } else {
  5. $TBS->MergeBlock($prefix, []);
  6. }
  7. }
  8.  
  9. mergeLetter($TBS, $documentData, 'comCoAL');
  10. mergeLetter($TBS, $documentData, 'comCL');
  11. mergeLetter($TBS, $documentData, 'comCH');


Ps. nospor - no właśnie że nie mogę włączyć / nie potrafię włączyć wyświetlania błędów dla OpenTBS bo ma w tym systemie weryfikacje poprawności danych jakie się generują i jak dam $TBS->SetOption(array('noerr' => false)); to dostaje w moim API "Some error during connecting to the server. parsererror SyntaxError: Unexpected token < in JSON at position 0 200".
Jak chcę sobie wyświetlić co mi się generuje to daję np.
//throw new Exception('<pre>' . print_r($_POST, 1) . '</pre>');
ale jak wyświetlić dla błedów $TBS nie potrafię

Ps. Dzięki panowie już działa.
viking
Jeżeli zwracasz to z API to błąd będzie wyświetlony w konsoli przeglądarki jako odpowiedź. Unexpected token < in JSON - to pokazuje że masz tam html z dodatkowymi danymi błędu.
pela222
Cytat(viking @ 19.10.2020, 12:30:30 ) *
Jeżeli zwracasz to z API to błąd będzie wyświetlony w konsoli przeglądarki jako odpowiedź. Unexpected token < in JSON - to pokazuje że masz tam html z dodatkowymi danymi błędu.

Może źle to nazwałem. API nazywam cały mój system / aplikacje do generowania dokumentów. Zostawmy to...Może kiedyś poproszę developera, który mi to robił, żeby mi wytłumaczył jak włączyć wyświetlanie tych błędów dla OpenTBS.... bo byłoby to pomocne przy modyfikacjach. Jeszcze raz dziękuję panowie.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.