Drukowana wersja tematu

Kliknij tu, aby zobaczyć temat w orginalnym formacie

Forum PHP.pl _ Przedszkole _ [PHP]Dla czego mam błąd use

Napisany przez: pawel06281990 21.03.2019, 14:55:46

Witam,

Mam problem ze skryptem smsapi pobrane od wydawcy

tek kod wygląda tak

  1. declare(strict_types=1);
  2.  
  3. require_once 'vendor/autoload.php';
  4.  
  5. use Smsapi\Client\Feature\Profile\Data\Profile;
  6. use Smsapi\Client\SmsapiHttpClient;
  7.  
  8. /** @var Profile $profile */
  9. $profile = (new SmsapiHttpClient())
  10. ->smsapiPlService('Wygenerowany_token')
  11. ->profileFeature()
  12. ->findProfile();
  13.  
  14. http://www.php.net/var_dump($profile->points);


Ale wyskakuje mi błąd use i nie wiem dla czego nigdy nie miałem problemu z api a teraz się pojawił.

Pisałem do wydawcy ale on mi nic sensownego nie powiedział jedynie wskazał plik w którym on jest tak jak bym nie widział może wy mi pomożecie o to kod błędu.

Parse error: syntax error, unexpected 'use' (T_USE) in /home/sfera/public_html/admin/notification_settings.php on line 554

Chce zaznaczyć że w bibliotece którę wydał producent nie ma pliku vendor/autoload.php i nie wiem jak połączyć zaczołem robić tak jak na zdjęciu.



Proszę was o pomoc bo już nie wiem co mogę zrobić.

Napisany przez: nospor 21.03.2019, 15:04:04

Uzywasz zbyt starej wersji php

Napisany przez: pawel06281990 21.03.2019, 15:25:30

Używam PHP 7.0 (ea-php70) jest ustawiony od początku po założenie czyli to jest podstawowy php 7.0

Napisany przez: nospor 21.03.2019, 15:32:50

Nie zwrocilem uwagi na kod, ktory wrzuciles jako obrazek...

USE uzywa sie na poczatku skryptu a nie gdzies w linii nr 500 gdzie czort wie co ty tam masz powyzej

Napisany przez: pawel06281990 21.03.2019, 16:14:06

Dodałem go teraz tak

  1.  
  2. use Smsapi\Feature\Profile\Data\Profile;
  3. use Smsapi\SmsapiHttpClient;
  4. declare(strict_types=1);
  5.  
  6. require_once __DIR__.'includes/smsapi/smsapi2/Feature/Profile/Data/Profile.php';
  7. require_once __DIR__.'includes/smsapi/smsapi2/SmsapiHttpClient.php';
  8.  
  9.  
  10.  
  11. /** @var Profile $profile */
  12. $profile = (new SmsapiHttpClient())->smsapiPlService($data['token_api'])->profileFeature()->findProfile();
  13.  
  14. http://www.php.net/var_dump($profile->points);
  15.  
  16.  
  17.  


Ale nadal jest to samo Parse error: syntax error, unexpected 'use' (T_USE) in /home/sfera/public_html/admin/notification_settings.php on line 549 Nie wiem może coś jest nie tak z biblioteką może być questionmark.gif

Napisany przez: nospor 21.03.2019, 16:17:10

Kiedy nadalwidze, ze masz USE w lini 549... Przeciez komunikat bledu wyraznie to mowi...

Napisany przez: pawel06281990 21.03.2019, 16:24:52

Żeby nie było pokaże na obrazku że zmieniłem



I nadal jest błąd

Napisany przez: nospor 21.03.2019, 16:26:35

To podaj teraz jeszcze raz dokladnie jak brzmi blad

edit: kurcze, przeciez jak WOL na tym obrazku masz w linii 551 USE.... ty probujesz sam siebie oszukac czy jak?

Napisany przez: skleps 21.03.2019, 17:12:33

Cytat(pawel06281990 @ 21.03.2019, 16:14:06 ) *
Ale nadal jest to samo Parse error: syntax error, unexpected 'use' (T_USE) in /home/sfera/public_html/admin/notification_settings.php on line 549 Nie wiem może coś jest nie tak z biblioteką może być questionmark.gif


Błąd mówi że dalej jest błąd w linii 549.
Wierze Ci że zmieniłeś, ale czy:
1. wgrałeś na serwer? (głupio brzmi ale zapytać trzeba)
2. jaki hosting? może jest włączone jakieś cache'owanie skryptów i dlatego tak się dzieje? Ty edytujesz kod, ale serwer dalej wykonuje starszą wersje kodu...

Napisany przez: nospor 21.03.2019, 17:28:13

Cytat
Wierze Ci że zmieniłeś, ale czy:
Przeciez na zalaczonym aktualnie obrazku z kodu widac ze nie zmienil... Wiec jak powiem ci ze biale jest czarne a czarne biale to tez uwierzysz mimo ewidentnych dowodow ze jest na odwrot? wink.gif

Napisany przez: skleps 21.03.2019, 17:45:30

Cytat(nospor @ 21.03.2019, 17:28:13 ) *
Przeciez na zalaczonym aktualnie obrazku z kodu widac ze nie zmienil... Wiec jak powiem ci ze biale jest czarne a czarne biale to tez uwierzysz mimo ewidentnych dowodow ze jest na odwrot? wink.gif


"może jest włączone jakieś cache'owanie skryptów i dlatego tak się dzieje?"

Widzimy wynik i zgadzam się że serwer wykonuje kod w którym jest błąd w linii 5xx.
A autor mógł wyedytować skrypt, ale "optymalizator/cache php" wciąż wykonuje stary kod. I wtedy wszyscy mówimy prawdę smile.gif

A takich optymalizatorów używa/używało domyślnie np. IQ:
https://www.iq.pl/pomoc/9/163
"5.x-cache - Podstawowa wersja PHP 5.2 z zainstalowanym akceleratorem skryptów PHP IQ Cache"

a przynajmniej tam się z tym spotkałem - zmieniałem kod a wynik wciąż ten sam smile.gif

Napisany przez: nospor 21.03.2019, 17:48:02

Autor wyraznie pokazal skrypt po zmianach

Cytat
Żeby nie było pokaże na obrazku że zmieniłem

Na ktorym widac ze nic nei zmienil wiec cache nie ma tu nic do tego skoro skrypt niezmieniony...

Napisany przez: skleps 21.03.2019, 17:51:24

Cytat(nospor @ 21.03.2019, 17:48:02 ) *
Autor wyraznie pokazal skrypt po zmianach

Na ktorym widac ze nic nei zmienil wiec cache nie ma tu nic do tego skoro skrypt niezmieniony...


dlatego zadałem pytanie:
"1. wgrałeś na serwer? (głupio brzmi ale zapytać trzeba)"

a że bywam miłym człowiekiem to wskazałem drugie możliwe wyjaśnienie z cache jakby się okazało, że autor w zdenerwowaniu wrzucił na forum "nie ten obrazek co chciał" smile.gif

Napisany przez: pawel06281990 21.03.2019, 18:13:26

Cytat(skleps @ 21.03.2019, 17:12:33 ) *
Błąd mówi że dalej jest błąd w linii 549.
Wierze Ci że zmieniłeś, ale czy:
1. wgrałeś na serwer? (głupio brzmi ale zapytać trzeba)
2. jaki hosting? może jest włączone jakieś cache'owanie skryptów i dlatego tak się dzieje? Ty edytujesz kod, ale serwer dalej wykonuje starszą wersje kodu...


Odpowiem na te dwa pytania.

1. Tak zapisałem i dodałem na serwer
2. Na moim VPS stoi strona.

i chce przeprosić nospor bo teraz zrozumiałem o co chodziło musiałem przeczytać kilka razy i teraz wiem i zadziałało ale znów mam problem.

No wy komunikat ale widzie ze tego pliku nie ma na serwerze

Fatal error: Trait 'Psr\Log\LoggerAwareTrait' not found in /home/sfera/public_html/admin/includes/smsapi/smsapi2/SmsapiHttpClient.php on line 22

co mogę z tym zrobić jak nie ma foldera a ni plików questionmark.gif

Napisany przez: viking 21.03.2019, 18:18:02

Uruchomić instalację przez composer.

Napisany przez: pawel06281990 21.03.2019, 18:45:07

Cytat(viking @ 21.03.2019, 18:18:02 ) *
Uruchomić instalację przez composer.


Ale nie wiem jak bo nigdy tego nie robiłem

Napisany przez: viking 21.03.2019, 19:00:48

To wchodzisz na dokumentację i czytasz https://getcomposer.org/doc/03-cli.md#install-i

Napisany przez: pawel06281990 21.03.2019, 19:26:27

Jak widze to się instaluje przez konsole jak w Ubuntu questionmark.gif

Napisany przez: viking 21.03.2019, 19:32:08

Witaj w nowoczesnym świecie programistów.

Napisany przez: pawel06281990 21.03.2019, 19:36:38

Cytat(viking @ 21.03.2019, 19:32:08 ) *
Witaj w nowoczesnym świecie programistów.


Ja jesdynie terminal mam do instalowania na cały serwer dodatków w WHM bo posiadam serwer VPS

I niestety nie zainstaluje bo to jest dla Windowsa a ja mam inny system

Napisany przez: Tomplus 21.03.2019, 20:24:08

Paweł, ale z composera korzysta się przede wszystkim w konsoli głównie pod linux.

Jak masz dostęp do SSH, to zainstaluj sobie aplikacje np. apt install composer (tak jest na debianie) a potem powinno być z górki.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)