2015-09-03 12 views
5

Chcę się zalogować do OpenCart CMS z curl automatycznie i dodać rzeczy do niego automatycznie
ale nie mogę się zalogować. Szukałem i znalazłem wynik, ale nie mogłem pomóc i nie mam żadnego wyniku. To jest mój kod:Zaloguj się do Administratora Opencart z lokomotywą PHP

<?php 
include_once "simple_html_dom.php"; 
$username = 'active'; 
$password = '123active'; 
$loginUrl = 'http://localhost:100/mywebsite/admin/'; 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $loginUrl); 

curl_setopt($ch, CURLOPT_POST, 1); 

curl_setopt($ch, CURLOPT_POSTFIELDS, 'username='.$username.'&password='.$password); 

curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

$store = curl_exec($ch); 
$html=new simple_html_dom(); 
$html->load($store); 
foreach($html->find("li#dashboard") as $dash){ 
    echo $dash->innertext; 
} 
?> 

W tym kodzie najpierw zainicjować username i password i mój URL z linkami do
admin mojej stronie następnie używam CURLOPT_POST żądanie i CURLOPT_POSTFIELDS
a następnie wykonać $ch ale teraz don nie uzyskał żadnego wyniku na cookie.txt i nie zalogował się do administratora strony
.

+0

Czy to problem z '& autologowanie = 1 & userlogi = login' ?. Testuję, ale nie dostaję wyniku. – MEAM

Odpowiedz

1

Spojrzałem na http://demo.opencart.com/admin/ i zobaczyłem, że adres URL działania w formularzu to nie tylko/admin. Spróbuj tego:

<?php 
include_once "simple_html_dom.php"; 
$username = 'active'; 

$password = '123active'; 
//$loginUrl = 'http://localhost:100/mywebsite/admin/'; 
//new url 
$loginUrl = 'http://localhost:100/mywebsite/admin/index.php?route=common/login'; 

$ch = curl_init(); 

curl_setopt($ch, CURLOPT_URL, $loginUrl); 

curl_setopt($ch, CURLOPT_POST, true); 

// follows a location header redirect 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 

curl_setopt($ch, CURLOPT_POSTFIELDS, 'username='.$username.'&password='.$password); 

curl_setopt($ch, CURLOPT_COOKIEJAR, 'cookie.txt'); 

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

$store = curl_exec($ch); 
$html=new simple_html_dom(); 
$html->load($store); 
foreach($html->find("li#dashboard") as $dash){ 
    echo $dash->innertext; 
} 
?> 

I didnt't testu jeśli url działanie zależy od konkretnej wersji, więc po prostu sprawdzić formę ze swoich narzędzi programistycznych przeglądarki

+0

Chcę dodać produkt automatycznie z tekstu do OpenCart czy masz jakieś sugestie? – MEAM

+1

Moją sugestią jest, aby znaleźć OpenCart API, nie jestem naprawdę w OpenCart, ale myślę, że istnieje pewne rozszerzenie API może być wbudowany interfejs API. Może to pomaga: (http://www.opencart.com/index.php?route=extension/extension/info&extension_id=15445&filter_search=rest%20api&filter_license=0) – swidmann

+0

Chcę trochę problemów z 'cookie.txt' i nie mogę wypełnić to! Wykonuję wyszukiwanie, ale nie uzyskuję żadnych wyników. Chcę się dowiedzieć, dlaczego nie mam żadnych wyników w tym pliku? Czy mogę mieć problem z plikami cookie? Przeczytaj kod w sekcji plików cookie – MEAM