php parsing log file getting empty output having no errors - php
I am new to php. Iam trying to parse log file and expecting array output. But unfortunately the output is empty with no errors/warnings.
I am trying to follow this example, here: http://www.phpclasses.org/package/2596-PHP-Parse-Apache-log-files-in-the-common-log-format.html
Below is the code:
apache-log-parser.php
<?php
class apache_log_parser
{
var $bad_rows; // Number of bad rows
var $fp; // File pointer
function format_log_line($line)
{
preg_match("/^(\S+) (\S+) (\S+) \[([^:]+):(\d+:\d+:\d+) ([^\]]+)\] \"(\S+) (.*?) (\S+)\" (\S+) (\S+) (\".*?\") (\".*?\")$/", $line, $matches); // pattern to format the line
return $matches;
}
function format_line($line)
{
$logs = $this->format_log_line($line); // format the line
if (isset($logs[0])) // check that it formated OK
{
$formated_log = array(); // make an array to store the lin info in
$formated_log['ip'] = $logs[1];
$formated_log['identity'] = $logs[2];
$formated_log['user'] = $logs[2];
$formated_log['date'] = $logs[4];
$formated_log['time'] = $logs[5];
$formated_log['timezone'] = $logs[6];
$formated_log['method'] = $logs[7];
$formated_log['path'] = $logs[8];
$formated_log['protocal'] = $logs[9];
$formated_log['status'] = $logs[10];
$formated_log['bytes'] = $logs[11];
$formated_log['referer'] = $logs[12];
$formated_log['agent'] = $logs[13];
return $formated_log; // return the array of info
}
else
{
$this->bad_rows++; // if the row is not in the right format add it to the bad rows
return false;
}
}
function open_log_file($file_name)
{
$this->fp = fopen($file_name, 'r'); // open the file
if (!$this->fp)
{
return false; // return false on fail
}
return true; // return true on sucsess
}
function close_log_file()
{
return fclose($this->fp); // close the file
}
// gets a line from the log file
function get_line()
{
if (feof($this->fp))
{
return false;
}
$bits='';
// I find for loops much much faster
for (;!feof($this->fp) && $bits != "\n";)
{
$bits .= fread($this->fp, 1);
}
return rtrim($bits, "\n");
}
}
?>
example.php
<?php
include 'apache-log-parser.php';
$apache_log_parser = new apache_log_parser(); // Create an apache log parser
if ($apache_log_parser->open_log_file('example.log')) // Make sure it opens the log file
{
while ($line = $apache_log_parser->get_line()) { // while it can get a line
//print_r($line);
$parsed_line = $apache_log_parser->format_line($line); // format the line
//var_export($parsed_line);
// print_r($parsed_line); // print out the array
}
$apache_log_parser->close_log_file(); // close the log file
}
else
{
echo 'Sorry cannot open log file.';
}
?>
example.log
172.0.0.1 - - [21/Sep/2005:23:06:37 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:38 +0100] "GET / HTTP/1.1" 200 1647 "http://www.example.com/" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:38 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:38 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:39 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:40 +0100] "GET / HTTP/1.1" 200 12372 "http://www.example.com/" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:40 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:41 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
172.0.0.1 - - [21/Sep/2005:23:06:41 +0100] "GET / HTTP/1.1" 404 - "-" "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8b3) Gecko/20050712 Firefox/1.0+"
I will be glad if someone look into this and suggest me what changes to make.
Related
Attempting to get array with curl_exec [duplicate]
This question already has answers here: How can I access an array/object? (6 answers) Closed 9 months ago. I am trying to get an array from the AnimeCharactersDatabase in order to then produce a table with the results. I had it working once before but cannot remember how I got it to work. Looking at the url (http://www.animecharactersdatabase.com/api_series_characters.php?character_q=Usagi), "search_results" should be itself an array of characters which have arrays of info within them. <?php $url= "http://www.animecharactersdatabase.com/api_series_characters.php?character_q=Usagi"; /* gets the data from a URL */ function get_acdb($url) { //ACDB requires certain agents for the query per their documentation. $agents = array( 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100508 SeaMonkey/2.0.4', 'Mozilla/5.0 (Windows; U; MSIE 7.0; Windows NT 6.0; en-US)', 'Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1' , 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0 Waterfox/56.2.14', 'Lynx/2.8.7dev.4 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.8d', 'Lynx/2.8.9dev.8 libwww-FM/2.14 SSL-MM/1.4.1 GNUTLS/3.4.9', 'Lynx/2.8.3dev.9 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.6', 'Opera/9.80 (Windows NT 5.3; U; x64; en-US) Presto/2.12.388 Version/12.18' ); $ch = curl_init(); $timeout = 5; curl_setopt($ch,CURLOPT_URL,$url); //I believe this should make it return the data, not just true. curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); curl_setopt($ch,CURLOPT_USERAGENT,$agents[array_rand($agents)]); $data = curl_exec($ch); curl_close($ch); return json_decode($data, true); } /* Parse the data into Characters. */ $arr = get_acdb($url); $arr = array($arr["search_results"]); //Upon testing, this is always an array of 1, and $arr[0] shows no value. This is where I need help, making the for each loop actually add characters to the new array SearchArray. $i=-1; foreach ($arr[0] as $xyz) { //I never get within this function because there $arr[0] doesn't seem to be an array. $i=$i+1; $CharName = $arr[0][$i]["name"]; $CharID = $arr[0][$i]["id"]; $SeriesID = $arr[0][$i]["anime_id"]; $SeriesName = $arr[0][$i]["anime_name"]; $medialenA = strlen($CharName) + 25; $medialenB = strlen($SeriesName) + 2; $mediatype = substr($arr[0][$i]["desc"],$medialenA); $mediatype = substr($mediatype,0,strlen($mediatype) -$medialenB); $CharSex = $arr[0][$i]["gender"]; { //Add relevant matches to Array. $SearchArray[] = array( 'CharID'=>$CharID, 'Name'=>$CharName, 'SeriesID'=>$SeriesID, 'SeriesName'=>$SeriesName, 'Sex'=>$CharSex, ); } } ?>
I have modified a bit your code but it is fully functional <?php $url = "https://www.animecharactersdatabase.com/api_series_characters.php?character_q=Usagi"; function getData($url){ $ch = curl_init(); $timeout = 5; curl_setopt($ch,CURLOPT_URL,$url); //I believe this should make it return the data, not just true. curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout); curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:7.0.1) Gecko/20100101 Firefox/7.0.1'); $data = curl_exec($ch); curl_close($ch); return $data; } $results= getData($url); $objectResults= json_decode($results); foreach($objectResults->search_results as $character){ echo $character->anime_id."\n"; echo $character->anime_name."\n"; echo $character->anime_image."\n"; echo $character->character_image."\n"; echo $character->id."\n"; echo $character->gender."\n"; echo $character->name."\n"; echo $character->desc."\n"; echo"\n\n"; }
mysqli_query execution throws a http error 500 [duplicate]
This question already has an answer here: What to do with mysqli problems? Errors like mysqli_fetch_array(): Argument #1 must be of type mysqli_result and such (1 answer) Closed 2 years ago. Here's My setup I have gone over it twice already and have come up with nothing. I am currently working on a LAMP stack and most of the configurations have been done properly. I have two files 1. connect.php 2. registration.php code of connect.php is as follows: <?php ini_set('display_errors',1); error_reporting(E_ALL); $hostname="localhost"; //local server name $username="user_name"; //mysql username $password="my_password"; //mysql password $database="my_database"; //database name // Create Connection to DB using an Object $con= mysqli_connect($hostname,$username,$password); //do i need to pass database name also as an argument to this? //Check Connection if(mysqli_connect_errno()){ echo"Failed to connect! due to : " . mysqli_connect_errno(); } else{ echo"Connected!"; } ?> code of registration.php is as follows: <?php //start php tag include("/var/www/calculator/connect.php"); //using absolute path to avoid any confusion if (mysqli_connect_errno()) { printf("Connect failed: %s\n", mysqli_connect_error()); exit(); } else { printf("Connected! on Registration Page"); //executes till here with no problems } if (mysqli_query($conn, "CREATE table users")) { printf("Query Executed!", mysqli_affected_rows($conn)) } mysqli_close($link); ?> Some have suggested to take a look at the apache server logs here is the last 10 output of the logs ::1 - - [24/Feb/2020:13:14:41 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:43 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:44 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:45 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:45 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:45 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:45 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:14:45 +0530] "GET /registration.php HTTP/1.1" 500 185 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36" ::1 - - [24/Feb/2020:13:15:37 +0530] "-" 408 0 "-" "-" ::1 - - [24/Feb/2020:13:15:37 +0530] "-" 408 0 "-" "-" I need help on why my queries are not getting executed despite my code having no coding errors or query structure errors.
You've missed ;: if (mysqli_query($conn, "CREATE table users")) { printf("Query Executed!", mysqli_affected_rows($conn)) // <---- here } Also, read about mysqli_connect. You should use 4 arguments, but can pass '' value in one of it.
PHP | How to send URL in 'content'=>http_build_query?
Im trying to send URL inside the query, But I get an error: syntax error, unexpected '=' on line 7 How do I send the URL correctly? UPDATE 1: now problem in line 8 <?php $opts = array( 'http'=>array( 'method'=>"POST", 'content'=>http_build_query("url=http://www.hotstar.com/tv/saath-nibhaana-saathiya/693/meera-humiliates-the-modis/1000055355") 'header'=>"User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:51.0) Gecko/20100101 Firefox/51.0" , "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" , "Cookie: __cfduid=d1d6556674ee5fe2038c6c516e6ad786f1515596203" )); $context = stream_context_create($opts); $url = "http://en.fetchfile.net/fetch/"; $data = file_get_contents($url, false, $context); echo $data; UPDATE 2: I do not know why, but the POST request does not receive the JSON I'm trying to check what the problem is currently, if possible for help thanks THE WHOLE POST REQUEST: User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:51.0) Gecko/20100101 Firefox/51.0 Accept: application/json, text/javascript, */*; q=0.01 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/x-www-form-urlencoded; charset=UTF-8 X-Requested-With: XMLHttpRequest Referer: http://en.fetchfile.net/?url=http%3A%2F%2Fwww.hotstar.com%2Ftv%2Fsaath-nibhaana-saathiya%2F693%2Fahemgopi-have-a-fight%2F1000055779 Content-Length: 122 Cookie: __cfduid=d1d6556674ee5fe2038c6c516e6ad786f1515596203; _ym_uid=1515754827599813582; _ym_isad=2; bv_DSKskdck_s1d=bvDSKskdcks1d; CoinHiveOptOut=1515754855.247; bvppvarnp0=1 Connection: keep-alive Body: url=http%3A%2F%2Fwww.hotstar.com%2Ftv%2Fsaath-nibhaana-saathiya%2F693%2Fahemgopi-have-a-fight%2F1000055779&action=homePure JSON Response: {"acodec":"mp4a.40.2","description":"Meera humiliates Gopi at the Modi Bhavan. Later, Kinjal gets suspicious seeing Kokila's behaviour. Ahem is furious at Gopi for using his shirt as a cleaning cloth. Gopi reacts to his accusations. Later, Meera hurts Molu's head and humiliates Paridhi for playing a prank on her.","display_id":"1000055779","duration":1296,"episode":"Ahem-Gopi have a fight","episode_number":1369,"ext":"mp4","extractor":"HotStar","extractor_key":"HotStar","format":"hls-4563 - 1920x1080","format_id":"hls-4563","formats":[{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-64 - 250x140","format_id":"hls-64","fps":null,"height":140,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":64.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_1_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":250},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-121 - 320x180","format_id":"hls-121","fps":null,"height":180,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":121.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_2_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":320},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-241 - 320x180","format_id":"hls-241","fps":null,"height":180,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":241.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_3_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":320},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-461 - 416x234","format_id":"hls-461","fps":null,"height":234,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":461.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_4_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":416},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-861 - 640x360","format_id":"hls-861","fps":null,"height":360,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":861.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_5_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":640},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-1360 - 720x404","format_id":"hls-1360","fps":null,"height":404,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":1360.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_6_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.66.30","width":720},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-2062 - 1280x720","format_id":"hls-2062","fps":null,"height":720,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":2062.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_7_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.77.30","width":1280},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-3062 - 1600x900","format_id":"hls-3062","fps":null,"height":900,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":3062.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_8_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.77.30","width":1600},{"acodec":"mp4a.40.2","ext":"mp4","format":"hls-4563 - 1920x1080","format_id":"hls-4563","fps":null,"height":1080,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","preference":null,"protocol":"m3u8","tbr":4563.0,"url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_9_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.77.30","width":1920}],"fps":null,"height":1080,"http_headers":{"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8","Accept-Charset":"ISO-8859-1,utf-8;q=0.7,*;q=0.7","Accept-Encoding":"gzip, deflate","Accept-Language":"en-us,en;q=0.5","Cookie":"_alid_=Q7nfOk5ehqKpd9pOQBAIiQ==; hdntl=exp=1515843396~acl=%2f*~data=hdntl~hmac=f1a825da0313c89669ed8f19155bf8410b9f1f6f39068ee04279dd22e7c4e78d","User-Agent":"Mozilla/5.0 (X11; Linux x86_64; rv:10.0) Gecko/20150101 Firefox/47.0 (Chrome)","X-Forwarded-For":"117.200.190.41"},"id":"1000055779","manifest_url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/master.m3u8?hdnea=st=1515756695~exp=1515757295~acl=/*~hmac=a524380edf50b440821777604ba55f39e4b12b45212be67d878ad7299ec4402f","playlist":null,"playlist_index":null,"preference":null,"protocol":"m3u8","requested_subtitles":null,"series":"Saath Nibhaana Saathiya","tbr":4563.0,"timestamp":1428499800,"title":"Ahem-Gopi have a fight","upload_date":"20150408","url":"https://staragvod1-vh.akamaihd.net/i/videos/plus/sns/1369/1000055779_,16,54,106,180,400,800,1300,2000,3000,4500,_STAR.mp4.csmil/index_9_av.m3u8?null=0&id=AgDUL+9aAhYWjMSdWFr0pI0ySbRDIOcQ+v8AA5I0zbQ0kTxVW6Fk8MREQkUs6kKfbBZtynevwukFzQ%3d%3d","vcodec":"avc1.77.30","webpage_url":"http://www.hotstar.com/tv/saath-nibhaana-saathiya/693/ahemgopi-have-a-fight/1000055779","webpage_url_basename":"1000055779","width":1920} Cookies valid until 2019 I send the POST request once again, I get the HTML page of fetchfile, and not the JSON with the video links
You should replace: http_build_query(url=http://www.hotstar.com/tv/saath-nibhaana-saathiya/693/meera-humiliates-the-modis/1000055355) By http_build_query("url=http://www.hotstar.com/tv/saath-nibhaana-saathiya/693/meera-humiliates-the-modis/1000055355"),
$_POST not submitting the form, array prints as array()
Below is the form I'm using to submit a new wheel into a DB on my local XAMPP server, problem is the post method doesn't work, I had problems with a modal which was sorted by using $_GET instead. I've changed a few php.ini settings but have changed them back was, max_upload and another one, I've read about them in other questions but they don't seem to solve the issue. When I use the submit form below the array printed is just Array(), doesn't even have a single value, this should prompt my error check to print an error at the least. <!-- wheels form --> <div class="text-center"> <form class="form-inline" action="wheels.php" method="post"> <div class="form-group"> <label for="wheelName">Add a new wheel:</label> <input name="wheelName" type="text" id="wheelName" class="form-control" value="<?=((isset($_POST['wheelName']))?$_POST['wheelName']:''); ?> "><!-- shorthand if/else--> <label for="code">Stockcode</label> <input name="code" type="text" id="code" class="form-control" value="<?=((isset($_POST['code']))?$_POST['code']:''); ?> "><!-- shorthand if/else--> <input type="submit" name="add_submit" value="add wheel" class="btn btn-success"> </div> </form> </div><hr> Standard php sql input and checks, the information is being pulled correctly as I have it displaying in a table further on my page.But the $_POST variable appears to be completely empty, has someone had this problem and managed to sort it? I'm assuming its to do with my php setup or .htaccess as someone else had an issue with. <?php require_once '../core/init.php'; include 'includes/header.php'; include 'includes/navigation.php'; // Get wheels from DB $sql = "SELECT * FROM wheels ORDER BY part_no"; $result = $db->query($sql); $errors = array(); // edit wheel if(isset($_GET['edit']) && !empty(['edit'])) { $edit_id = (int)$_GET['edit']; $edit_id = sanitize('edit_id'); //$sql2 = "SELECT * FROM wheels WHERE recid = '$edit_id'"; //$edit_result = $db->query($sql2); //$eWheel = mysqli_fetch_assoc($edit_result); } // Delete wheel if(isset($_GET['delete']) && !empty(['delete'])) { $delete_id = (int)$_GET['delete']; $delete_id = sanitize($delete_id); //$sql = "DELETE FROM wheels WHERE recid = '$delete_id'"; //$db->query($sql); //header('Location: wheels.php'); } // If add wheel form submitted if(isset($_POST['add_submit'])) { $wheel = sanitize($_POST['wheelName']); $stockCode = sanitize($_POST['stockCode']); // check if wheel is blank if($_POST['wheelName'] == '') { $errors[] .= 'Must enter wheel'; } // if wheel exists in db $sql = "SELECT * FROM wheels WHERE stockcode = '$stockCode'"; $result = $db->query($sql); $count = mysqli_num_rows($result); if($count > 0) { $errors[] .= 'that wheel already exists.'; } // display errors if(!empty($errors)) { echo displayErrors($errors); } else { //Add wheels to DB // incomplete unsure if feature needed at this stage. // $sql = "INSERT INTO wheels (wheelName, stockCode, ID ETC ETC VALUES Etc ETC // $db->query($sql); // header ('location : wheels.php '); } } var_dump($_POST); echo file_get_contents("php://input"); ?> Here is the log ::1 - - [23/Apr/2016:14:12:32 +1200] "GET / HTTP/1.1" 302 - "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:32 +1200] "GET /dashboard/ HTTP/1.1" 200 6904 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:32 +1200] "GET /dashboard/stylesheets/normalize.css HTTP/1.1" 200 6876 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:32 +1200] "GET /dashboard/stylesheets/all.css HTTP/1.1" 200 481308 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:32 +1200] "GET /dashboard/javascripts/modernizr.js HTTP/1.1" 200 51365 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:33 +1200] "GET /dashboard/javascripts/all.js HTTP/1.1" 200 189003 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:33 +1200] "GET /dashboard/images/xampp-logo.svg HTTP/1.1" 200 5427 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:33 +1200] "GET /dashboard/images/bitnami-xampp.png HTTP/1.1" 200 22133 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:33 +1200] "GET /dashboard/images/fastly-logo.png HTTP/1.1" 200 1770 "http://localhost/dashboard/" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36" ::1 - - [23/Apr/2016:14:12:33 +1200] "GET /dashboard/images/social-icons.png HTTP/1.1" 200 3361 "http://localhost/dashboard/stylesheets/all.css" "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/49.0.2623.112 Safari/537.36"
well, i think you should place the <?php line at the very top of the file... before the "Get wheels from DB" comment And instead of print_r($_POST); use var_dump($_POST); also, in the section "if wheel exists in db" your sql query is never using the $stockCode variable, you're missing the $ , it should be $sql = "SELECT * FROM wheels WHERE stockcode = '$stockCode'"; And drop the point before the equal sign for the errors. thats for Strings, and as an array $errors[] = 'that wheel already exists.'; should work fine
Read data from text file with php and create database
I have a text file, a huge one that contains some information's that I need to insert into a database. Here is the one of the rows of the text file: 77.242.22.86 - - [10/Jul/2013:14:07:26 +0200] "GET /web/img/theimage.jpg HTTP/1.1" 304 - "http://www.mywebiste.com/web/" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36 AlexaToolbar/alxg-3.1" I am using some php functions like: $myFile = "testFile.txt"; $fh = fopen($myFile, 'r'); This only read the text file, as I said, I need to get the data and insert into the database, here is an example how I need the row to be spli: 77.242.22.86 [10/Jul/2013:14:07:26 +0200] GET /web/img/theimage.jpg HTTP/1.1 304 http://www.mywebiste.com/web/ Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36 AlexaToolbar/alxg-3.1 Please help me to resolve this problem. Thank you.
$test ='77.242.22.86 - - [10/Jul/2013:14:07:26 +0200] "GET /web/img/theimage.jpg HTTP/1.1" 304 - "http://www.mywebiste.com/web/" "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36 AlexaToolbar/alxg-3.1"'; function tokenizer($test) { $test = trim(strtolower($test)); $res= str_replace(",","",$test); $res= str_replace("-","",$res); $res= str_replace(' "',"",$res); $result= explode(" ", $res); for ($i = 0; $i < count($result); $i++) { $result[$i] = trim($result[$i]); echo $result[$i]; ?> <hr/> <?php } return $result; // contains the single words }