Drukowana wersja tematu
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
declare(strict_types=1);
require_once 'vendor/autoload.php';
use Smsapi\Client\Feature\Profile\Data\Profile;
use Smsapi\Client\SmsapiHttpClient;
/** @var Profile $profile */
$profile = (new SmsapiHttpClient())
->smsapiPlService('Wygenerowany_token')
->profileFeature()
->findProfile();
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
use Smsapi\Feature\Profile\Data\Profile;
use Smsapi\SmsapiHttpClient;
declare(strict_types=1);
require_once __DIR__.'includes/smsapi/smsapi2/Feature/Profile/Data/Profile.php';
require_once __DIR__.'includes/smsapi/smsapi2/SmsapiHttpClient.php';
/** @var Profile $profile */
$profile = (new SmsapiHttpClient())->smsapiPlService($data['token_api'])->profileFeature()->findProfile();
http://www.php.net/var_dump($profile->points);
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ć
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ć
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?
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?
"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ę
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
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ł"
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
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
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)