php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 30-10-2008, 19:27
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard Login per curl auf Webseite funktioniert nicht

Hallo,

ich möchte mich auf folgender Webseite einloggen:
http://shop.hoffmann.de/index.php/sp...ielwaren/login

Diese URL ist auch gleichzeitig das Ziel des Formulars.

Als Ausgabe im Browser erhalte ich die Loginseite und folgende Meldung:
"Um den geschlossenen Bereich für Fachhändler zu betreten, benötigen Sie eine Kundennummer und ein Passwort. Wenn Sie noch kein Passwort besitzen, können Sie dies über den Anmeldeantrag anfordern."

Bei "CURLOPT_POSTFIELDS" habe ich alle Formulardaten eingetragen, die in den POST-Request an die Webseite geschickt werden sollen. Wer in den Quelltext o. g. Webseite schaut wird feststellen, dass das Formular leider keinen Submit-Button hat, sondern eine Grafik, die das Formular per Javascript abschickt.

Hier mein Code:

PHP-Code:
<?php
$ch 
curl_init();

// setze die URL und andere Optionen
$sendData = array('Login' => '19999107',
                     
'Password' => 'mopet',
                     
'Submit' => true,
                     
'RedirectURI' => '/content/view/full/1571'); 

curl_setopt($chCURLOPT_URL"http://shop.hoffmann.de/index.php/spielwaren/spielwaren/login");
curl_setopt($chCURLOPT_POSTtrue);
curl_setopt($chCURLOPT_POSTFIELDS"Login=User&Password=PW&RedirectURI=%2Fcontent%2Fview%2Ffull%2F1571"); //$sendData);
curl_setopt($chCURLOPT_COOKIESESSIONtrue);
curl_setopt($chCURLOPT_COOKIEFILE"cookiefile");
curl_setopt($chCURLOPT_COOKIEJAR"cookiefile");
curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);
curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($chCURLOPT_FAILONERRORtrue);
curl_setopt($chCURLOPT_RETURNTRANSFERfalse);
curl_setopt($chCURLOPT_UNRESTRICTED_AUTHtrue);

// führe die Aktion aus und gebe die Daten an den Browser weiter
curl_exec($ch); 

// schließe den cURL-Handle und gebe die Systemresourcen frei
curl_close($ch);
?>
Der Login will einfach nicht funktionieren. Könnte ihr mir helfen?
Mit Zitat antworten
  #2 (permalink)  
Alt 30-10-2008, 19:48
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

"Funktioniert nicht" ist keine Fehlerbeschreibung!
Mit Zitat antworten
  #3 (permalink)  
Alt 30-10-2008, 20:14
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Der Login findet nicht statt, das habe ich aber oben geschrieben. Ist diese Fehlerbeschreibung besser?
Mit Zitat antworten
  #4 (permalink)  
Alt 30-10-2008, 20:19
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

Gibt es denn keine Fehlermeldung ?
Was sagt curl_error()?
Mit Zitat antworten
  #5 (permalink)  
Alt 30-10-2008, 20:47
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von pekka
Gibt es denn keine Fehlermeldung ?
Was sagt curl_error()?
Nein, es gibt leider keine Fehlermeldung.

curl_error(); gibt leider auch keine Fehlermeldung aus.
Mit Zitat antworten
  #6 (permalink)  
Alt 30-10-2008, 20:50
krel
 Registrierter Benutzer
Links : Onlinestatus : krel ist offline
Registriert seit: Nov 2006
Ort: Osnabrück
Beiträge: 424
krel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

warum wird denn $sendData mit Daten gefüllt aber bei CURLOPT_POSTFIELDS wieder ganz andere Daten benutzt?!
Mit Zitat antworten
  #7 (permalink)  
Alt 30-10-2008, 21:00
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Weil ich testen wollte ob es am Array liegt, aber daran liegt es auch nicht. Macht also keinne Unterschied ob ich den String direkt reinschreibe oder das Array $sendData angebe
Mit Zitat antworten
  #8 (permalink)  
Alt 31-10-2008, 12:18
WiZARD
 Registrierter Benutzer
Links : Onlinestatus : WiZARD ist offline
Registriert seit: Jan 2003
Ort: Germany
Beiträge: 103
WiZARD ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Der einfachste Weg so wie ich das meist bei einem Curl Login / Datenübergabe mache ist, das erst über den Firefox zu machen und HTTPLIVEHEADERS mitlaufen zu lassen. Man sieht nach dem Submit dann in den Liveheaders was als POST übergeben wurde.

Dieses dann einfach Kopieren und in Curl mit reinnehmen, so vermeidet man dass man eventuell essentielle Daten vergisst / falsch schreibt. Dann einfach Username + Passwort entsprechend natürlich anpassen.

Meist wenn es nicht klappt ist irgendeine POST Information Murks oder es fehlt etwas ; so war es bisher bei mir jedenfalls.
Mit Zitat antworten
  #9 (permalink)  
Alt 31-10-2008, 13:10
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von WiZARD
Der einfachste Weg so wie ich das meist bei einem Curl Login / Datenübergabe mache ist, das erst über den Firefox zu machen und HTTPLIVEHEADERS mitlaufen zu lassen. Man sieht nach dem Submit dann in den Liveheaders was als POST übergeben wurde.

Dieses dann einfach Kopieren und in Curl mit reinnehmen, so vermeidet man dass man eventuell essentielle Daten vergisst / falsch schreibt. Dann einfach Username + Passwort entsprechend natürlich anpassen.

Meist wenn es nicht klappt ist irgendeine POST Information Murks oder es fehlt etwas ; so war es bisher bei mir jedenfalls.
Gut, dass du das ansprichst. Die Postvariablen habe ich mit HTTP Live Headers ausgelesen, genau so du. Habe ganz vergessen diese wichtige Info zu erwähnen.

Trotz allem funktioniert das Script/Der Login nicht.

Da muss doch irgendwo ein Denkfehler sein oder?
Mit Zitat antworten
  #10 (permalink)  
Alt 31-10-2008, 17:33
krel
 Registrierter Benutzer
Links : Onlinestatus : krel ist offline
Registriert seit: Nov 2006
Ort: Osnabrück
Beiträge: 424
krel ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hast du vielleicht den Quellcode der JS Funktion? hab grad keinen Nerv danach zu suchen :P
Mit Zitat antworten
  #11 (permalink)  
Alt 02-11-2008, 14:54
stony2k
 Newbie
Links : Onlinestatus : stony2k ist offline
Registriert seit: Dec 2005
Beiträge: 11
stony2k ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von krel
hast du vielleicht den Quellcode der JS Funktion? hab grad keinen Nerv danach zu suchen :P
Code:
<script language="JavaScript">
    function chk_form()
      {
      if(document.form.Login.value=="")
      {
      alert("Bitte das Feld Kundennummer ausfüllen!");
      document.form.Login.focus();
      }
      else if(document.form.Login.value.length<1 || document.form.Login.value.length>80)
      {
      alert("Die Kundennummer muß zwischen 1 und 80 Zeichen lang sein!");
      document.form.Login.focus();
      }
      else if(document.form.Password.value=="")
      {
      alert("Bitte das Feld Passwort ausfüllen!");
      document.form.Password.focus();
      }
      else document.form.submit();
    }

</script>
Ich hoffe du/ihr könnt mir weiter helfen.
Mit Zitat antworten
  #12 (permalink)  
Alt 09-04-2010, 11:25
Skrok
 Registrierter Benutzer
Links : Onlinestatus : Skrok ist offline
Registriert seit: Aug 2002
Beiträge: 197
Skrok ist zur Zeit noch ein unbeschriebenes Blatt
Standard Curl Login

Wahrscheinlich bin ich der 100 Benutzer der eine Frage zu Curl hat aber was solls, google und auch das Forum konnte mir bisher nicht so richtig weiterhelfen.

Ich möchte mich auf einer fremden Internetseite einloggen und anschließend ein File-Upload durchführen. Da dieses automatisch ablaufen soll dachte ich einfach mal an php ;-) ...

Ich hab mit Curl noch nicht so viel gemacht daher auch einen Teil des Codes einfach zusammengeschrieben. Wenn ich mich mit diesem Code zB in unserem Onlineshop anmelde, klappt alles nicht aber da wo ich den Login benötige.

Ich bekomme keine Fehlermeldung habe den Header mit "HttpLiveHeraders" angesehen und habe ebenfalls curl_error() benutzt.

Hier mal der Code:

PHP-Code:
<?php
 
 $sendData 
= array('username' => 'xxx',
                   
'passwd' => 'xxx',
                   
'remerber' => 'yes',
                   
'Submit' => true,
                   
'RedirectURI' => '/index.php?option=com_user');

curl_setopt($chCURLOPT_URL"http://www.sellerama.de/index.php?option=com_user&view=login");
curl_setopt($chCURLOPT_POSTtrue);
curl_setopt($chCURLOPT_POSTFIELDS$sendData);
curl_setopt($chCURLOPT_COOKIESESSIONtrue);
curl_setopt($chCURLOPT_COOKIEFILE"cookiefile");
curl_setopt($chCURLOPT_COOKIEJAR"cookiefile");
curl_setopt($chCURLOPT_FOLLOWLOCATIONtrue);
curl_setopt($chCURLOPT_USERAGENT"Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($chCURLOPT_FAILONERRORtrue);
curl_setopt($chCURLOPT_RETURNTRANSFERfalse);
curl_setopt($chCURLOPT_UNRESTRICTED_AUTHtrue); 

curl_exec($ch); 
curl_close($ch); 
?>
jeder kleinste Tip würde mich glaube ich weiterbringen...

Danke im vorraus!

Gruß
Jan
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 15:52 Uhr.