Curl + PHP sends sms

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από nastis » 16 Φεβ 2005 17:02

Καλησπερίζω το forum,
Αυτό είναι το πρώτο μου post by the way.

Λοιπόν αυτό που θέλω να κάνω είναι το εξής:
Να στέλνω μέσω μιας σελίδας sms χρησιμοποιώντας την υπηρεσία της otenet
https://cool4u.otenet.gr/gr/index.php3
για όσους δεν την ξέρουν κάνεις login και μετά από δύο κλίκ στέλνεις τσαμπέ μνμτα. :kaloe:
H υλοποίηση του πιστεύω μπορεί να γίνει με curl libs.

Γενικά με λίγο ψάξιμο κατέληξα στο παρακάτω script (είμαι στο στάδιο απλά να κάνω successful login ακόμα).

Κώδικας: Επιλογή όλων

<?php

	$login_username = "tzitzifiogkos"; 
	$login_password = "to_password_tou_tzitzifiogkou"; 
	$cookie_file_path = "/gr"; // Please set your Cookie File path
	$POSTFIELDS = 'login_username='. $login_username .'&login_password='. $login_password;	
$LOGINURL = "https&#58;//cool4u.otenet.gr/gr/index.php3";
	$agent = "Mozilla/5.0 &#40;Windows; U; Windows NT 5.0; en-US; rv&#58;1.4&#41; Gecko/20030624 Netscape/7.1 &#40;ax&#41;";

    $ch = curl_init&#40;&#41;; 
        curl_setopt&#40;$ch, CURLOPT_URL,$LOGINURL&#41;;
	curl_setopt&#40;$ch, CURLOPT_USERAGENT, $agent&#41;;
    curl_setopt&#40;$ch, CURLOPT_POSTFIELDS,$POSTFIELDS&#41;; 
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYPEER, 1&#41;;
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYHOST, 1&#41;;
        curl_setopt&#40;$ch, CURLOPT_RETURNTRANSFER, 1&#41;; 
	curl_setopt&#40;$ch, CURLOPT_FOLLOWLOCATION, 1&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEFILE, $cookie_file_path&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEJAR, $cookie_file_path&#41;;

    $result = curl_exec &#40;$ch&#41;;
    curl_close &#40;$ch&#41;;

?>
Το site χρησιμοποιεί cerficate και cookies.
Επειδή ίσως να δυκολευτετε να με βοηθήσετε εάν δεν έχετε otenet account θα εκτιμούσα ακόμα και τον τρόπο σκέψης για να "βρω" και να "καταλήξω" σε πράγματα.

κατα κύριο λόγω χρησιμοποιώ τα καλούδια του Web Developer extension του για να βρώ form information / ssl certificate / etc.

Curl δεν έχω ξαναδουλέψει και μου φαίνεται ίσως δεν έχω καταλάβει καλά τον μηχανισμό.

Ευχαριστώ εκ των προτέρων.
Φιλικά
Β.

Άβαταρ μέλους
cdhyper
Literature Moderator
Δημοσιεύσεις: 9707
Εγγραφή: 23 Ιουν 2001 03:00
Τοποθεσία: Φωτονερόπετρα
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από cdhyper » 16 Φεβ 2005 17:31

Δεν είμαι σίγουρος αν οι κανονισμοί (νομικά μιλώντας) της otenet θα το επέτρεπαν αυτό. Αφού είναι μόνο για otenet users εσύ δε μπορείς να το βγάλεις στο ευρύ (ή σε φίλους ας πούμε) κοινό. Αποτελεί κίνητρο για να γραφτείς στην otenet. Δεν ξέρω. Ας πει κάποιος που ξέρει.
Σύγκριση τιμών Supermarket: http://www.shopnsave.gr
Νέα Ιταλικα επιπλα κουζινας
Για φιλοσόφους: http://filosofia.gr και http://liantinis.org

nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από nastis » 16 Φεβ 2005 17:38

Για να μην παρεξηγηθώ. Sorry κιόλας αν έγινε. Το κανω για απολύτως προσωπικούς λόγους. Δεν έχω κανένα σκοπό να δώσω το password μου public, απλά για μεγαλύτερη άνεση και να ξεφύγω από το login process της διαδικασίας.

thnx

p.s. Παρεπιπτόντος δεν έχω ούτε σκοπό να το ανεβάσω στο internet, θα το τρέχω locally

Άβαταρ μέλους
cdhyper
Literature Moderator
Δημοσιεύσεις: 9707
Εγγραφή: 23 Ιουν 2001 03:00
Τοποθεσία: Φωτονερόπετρα
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από cdhyper » 16 Φεβ 2005 17:51

Ναι το ξέρω αλλά αυτό δε νομίζω να έχει σημασία για την Otenet. από τη στιγμή που φεύγεις από το δικό τους registration process δε νομίζω να το επιτρέπουν.
Σύγκριση τιμών Supermarket: http://www.shopnsave.gr
Νέα Ιταλικα επιπλα κουζινας
Για φιλοσόφους: http://filosofia.gr και http://liantinis.org

nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από nastis » 16 Φεβ 2005 17:58

:-( Ισως να μην σε κατάλαβα.
Όταν εννοείς να "ξεφεύγω" από το login process, τι εννοείς? Γιατί έχω την εντύπωση ότι δεν ξεφεύγω, ούτε νομίζω ότι μπορώ να ξεφύγω από όλη την διαδικάσια login. Απλά θέλω να την αυτοματοποιήσω.

Δηλαδή και cookie, θα πάρω και SSL Server Certificate να πάρω και να "δείξω" μετά, και νόμιμος χρήστης είμαι.

Δηλαδή εχώ θέλω να γλιτώσω τα 3-4 κλικ που κάνεις ασπούμε, όχι να μη με κάνει authenticate να μην καταχωρήται το entry μου ή κάτι παρόμοιο.

Thnx
B.
www.oktonia.com - Παγκόσμιο Χωριό Γνώσης Λυμένα Θέματα Εξετάσεων - Ασκήσεις

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από Rapid-eraser » 16 Φεβ 2005 19:35

nastis orea logiki se paw :)

Twra gia va eimai ilikrivis poli 8a i8ela va eixa eva login gia va piramatisto ligo kai egw :P mou arese sav idea kai eivai poli intriging gia scriptaki :P

Dev kserw pou exeis ftasei alla to movo sigouro eivia oti eisai se kalo dromo apo tnv stigmi pou ebales kato evtoles curl.

Gevikos n curl eivai evas mixavismos gia va prosomioveis diafora protokola me efkolia xoris va xriazete va avakalipteis tov troxo. Prosfrei dld tov handler gia ta diafora pragmata.
Xoris afto 8a eprepe va kaveis fsockopen se kapoio port kai va stileis kapoia data kai stnv sivexeia va pareis tnv apavtisi.
Safos afto apetei va exeis gvosi tou protokolou pou xrisimopieis ... me ta curl omos dev xriazete va exeis toso ba8ia gvosi :)

Twra sto script ... vomizo ta post vars dev xorizovte me & alla me \n

dev kserw pou exeis ftasei sto script ka8os blepw movo kapoio digmatismo exeis balei edw alla n diadikasia profavos parakato 8a exei os eksis kapos
tsimpas stnv apavtisti tou return apo to curl to cookie pou sou stelvei kai to xrisimopieis se ka8e hit pou 8a kaveis stnv sivexeia
(8imisou oti prepei va skefteis pos 8a ekave ta pragmata evas browser !!!)
8a prepei episis va prosomioveis kai to referrer sta headers gia va prosomioveis pliros tov browser (se periptosi pou to elegxei afto to script tous pote dev ksereis)

Pavtos ilikriva apogoiteftika php 3 ???? akoma ????
kala va miv pame stnv 5 alla 3 ??? av eivai divatov ... poso xrovov eivai o programer pou tous grafei 140 ? (ipebroli :P)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
Cha0s
SysAdmin
Δημοσιεύσεις: 10242
Εγγραφή: 28 Ιούλ 2001 03:00

Curl + PHP sends sms

Δημοσίευση από Cha0s » 17 Φεβ 2005 10:00

Καλά στην Otenet που είχα πάρει μία φορά δεν υπήρχε ούτε ένα άτομο να του εξηγήσω τι έκανα σε PHP και ήθελα άλλο Permissions σε έναν φάκελο!

Δεν ξέρει κανείς PHP εκεί μέσα...

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από Rapid-eraser » 17 Φεβ 2005 10:23

etsi fevete :P
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από nastis » 17 Φεβ 2005 12:53

Καταρχήν thnx για το ενδιαφέρον
Rapid-eraser έγραψε:nastis orea logiki se paw :)
Twra sto script ... vomizo ta post vars dev xorizovte me & alla me \n
Οκ, θα το δοκιμάσω και αυτό.
Rapid-eraser έγραψε: (8imisou oti prepei va skefteis pos 8a ekave ta pragmata evas browser !!!)
8a prepei episis va prosomioveis kai to referrer sta headers gia va prosomioveis pliros tov browser (se periptosi pou to elegxei afto to script tous pote dev ksereis)
Μήπως ξέρεις πώς μπορώ να το κάνω αυτό? Να κάνω δηλαδή debug το HTTP? Να βλέπω ακριβώς σαν output τι δίνει και τι παίρνει σε επίπεδο κατανοητο? όχι δηλαδή σε TCP να βλέπω μόνο πακέτα? Λίγο πιο πάνω από εκει. (Συγχωρέστε με οι Πληροφορικάριοι για την ελλειπή μου γνώση στο OSI model). ψιλοπροσπαθώ με lynx να πώ την αλήθεια που δείχνει κάθε redirecting (εκεί νομίζω είναι το κλειδί), αλλά ακόμα δεν έβγαλα άκρη.

Το περίεργο επίσης είναι οτι δεν βγαίνει τίποτα στο output. Θα βοηθούσε π.χ.να μπορώ να κάνω κάπως debug τις curl μεταβλητές , ποιες χρησιμοποιούνται και τις τιμές τους κάθε χρονική στιγμή (γινεται κατι τέτοιο?).

Rapid-eraser έγραψε: Pavtos ilikriva apogoiteftika php 3 ???? akoma ????
kala va miv pame stnv 5 alla 3 ??? av eivai divatov ... poso xrovov eivai o programer pou tous grafei 140 ? (ipebroli :P)
Οντως είναι λίγο αμαρτία, ειδικά για τον otenet. :-(

Thnx
V.

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από Rapid-eraser » 17 Φεβ 2005 13:00

sto output dev bgazei tpt giati exeis evergopiimevo to
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

epomevos to apotelesma to perveis stnv metabliti

$result = curl_exec ($ch);

av kaveis echo to $result 8a deis afta pou epistrefei to hit pou ekaves :)
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
vcore
Δημοσιεύσεις: 354
Εγγραφή: 20 Δεκ 2003 01:19
Τοποθεσία: Crete
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από vcore » 20 Φεβ 2005 16:13

Cha0s έγραψε:Καλά στην Otenet που είχα πάρει μία φορά δεν υπήρχε ούτε ένα άτομο να του εξηγήσω τι έκανα σε PHP και ήθελα άλλο Permissions σε έναν φάκελο!

Δεν ξέρει κανείς PHP εκεί μέσα...

Giati html kseroun ? Let me lol :lol:

nastis
Δημοσιεύσεις: 124
Εγγραφή: 16 Φεβ 2005 16:28
Επικοινωνία:

Curl + PHP sends sms

Δημοσίευση από nastis » 22 Φεβ 2005 11:34

Kalimerizw to forum,

Den to exw kataferei plirws , alla eimai se polu kalo simeio.
[Isws, thelei ena refresh, gia na swsei/diabasei to session cookie.]
Opoios exei login stin otenet mporei na dokimasei.

Κώδικας: Επιλογή όλων

<?php
	$login_username = "firfirikos"; 	$login_password = "to_xazo_mou_password"; 
	$cookie_file_path = "/gr"; // Please set your Cookie File path
	$POSTFIELDS = 'login_username='. $login_username .'&login_password='. $login_password;
	$agent = "Mozilla/5.0 &#40;Windows; U; Windows NT 5.0; en-US; rv&#58;1.4&#41; Gecko/20030624 Netscape/7.1 &#40;ax&#41;";
    $ch = curl_init&#40;&#41;; 

// === STAGE 1 GET THE CONNECTION GET THE COOKIES ===========
    curl_setopt&#40;$ch, CURLOPT_URL,"https&#58;//cool4u.otenet.gr/gr/index.php3"&#41;; // Edw dokimasa na balw to otenet.gr/gr kai den mou douleue
	curl_setopt&#40;$ch, CURLOPT_VERBOSE, 1&#41;;
	curl_setopt&#40;$ch, CURLOPT_USERAGENT, $agent&#41;;
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYPEER, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYHOST, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_RETURNTRANSFER, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_FOLLOWLOCATION, 1&#41;;
        curl_setopt&#40;$ch, CURLOPT_POSTFIELDS,$POSTFIELDS&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEFILE, $cookie_file_path&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEJAR, $cookie_file_path&#41;;
	curl_setopt&#40;$ch, CURLOPT_CAFILE, 'C&#58;\PHP\curl-ca-bundle.crt'&#41;;
	//$result = curl_exec &#40;$ch&#41;;

    // GET the output to the file
    ob_start&#40;&#41;;
	$result = curl_exec &#40;$ch&#41;; //curl_exec&#40;$ch&#41;;
	curl_close&#40;$ch&#41;;
	$retrievedhtml = ob_get_contents&#40;&#41;;
	ob_end_clean&#40;&#41;;
// Na apothikeysei to arxeio
	@ $fp = fopen&#40;"result.txt","a+"&#41;;
	fwrite&#40;$fp,$retrievedhtml&#41;;
	fclose&#40;$fp&#41;;	
    curl_close &#40;$ch&#41;;
 echo "OLEEEEEEEEE<br>";
 
 // -------- Twra traba diabase to arxeio pare tin grammi pou thelw ------------
 	@ $fp = fopen&#40;"result.txt","r"&#41;;	
 	$i=0;
	while &#40;!feof&#40;$fp&#41;&#41;&#123;  
		$line=fgets&#40;$fp,900&#41;;
		if &#40;$i>137 && $i< 139&#41;&#123; // plz pare tin grammi me to url kai oxi tipot'allo, thnx
			echo $line;
			$token=explode&#40;"\"",$line&#41;; // nai, nai mono to url .. eeeetsi..
		&#125;
		$i++;
	&#125;
	fclose&#40;$fp&#41;;
	
// === STAGE 2 GET ME THE SEND MESSAGE PAGE  ===========
    $url_to_go ="http&#58;//cool4u.otenet.gr".$token&#91;1&#93;;
    $ch = curl_init&#40;&#41;; 
    curl_setopt&#40;$ch, CURLOPT_URL,$url_to_go&#41;; 
	curl_setopt&#40;$ch, CURLOPT_VERBOSE, 1&#41;;
   	curl_setopt&#40;$ch, CURLOPT_TIMEOUT, 300&#41;;
   	curl_setopt&#40;$ch, CURLE_OPERATION_TIMEOUTED, 300&#41;;
	curl_setopt&#40;$ch, CURLOPT_USERAGENT, $agent&#41;;
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYPEER, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_SSL_VERIFYHOST, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_RETURNTRANSFER, 0&#41;;
	curl_setopt&#40;$ch, CURLOPT_FOLLOWLOCATION, 1&#41;;
        curl_setopt&#40;$ch, CURLOPT_POSTFIELDS,$POSTFIELDS&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEFILE, $cookie_file_path&#41;;
	curl_setopt&#40;$ch, CURLOPT_COOKIEJAR, $cookie_file_path&#41;;
	curl_setopt&#40;$ch, CURLOPT_CAFILE, 'C&#58;\PHP\curl-ca-bundle.crt'&#41;;
	$result = curl_exec &#40;$ch&#41;;
	curl_close &#40;$ch&#41;;
?>

V.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες