Secure file download in PHP, Security question PHP, PHP MYSQL Interview Question -Books download - PHP solutions guidelines queries update, phpmysqlquestion
Thursday, February 24, 2011
Strip All Non Alphanumeric Characters Except Space With PHP
$string_to_be_stripped = "Hi, I am a string and I need to be stripped...";
$new_string = ereg_replace("[^A-Za-z0-9]", "", $string_to_be_stripped );
function alphanumericAndSpace( $string )
{
return preg_replace('/[^a-zA-Z0-9\s]/', '', $string);
}
echo alphanumericAndSpace( $string_to_be_stripped);
?>
Tuesday, February 22, 2011
Search in all column in the table fields
$conn = @mysql_connect( 'localhost','root' ,'')
or die( mysql_errno().': '.mysql_error().NL );
$db=mysql_select_db('kiwi',$conn);
$result = mysql_query("SHOW COLUMNS FROM $table");
if (mysql_num_rows($result) > 0)
{
$i=0;
while ($row = mysql_fetch_array($result))
{
if($i==0)
{
echo $q="select * from $table where ".$row[0]."=".$condition;
}
else
{
$q.=" or ".$row[0]."=".$condition;
}
$i++;
}
}
echo 'a';
echo $q;
?>
Monday, February 14, 2011
Curl Example code php
CASE 1: Just retrieve the site content
<?php
$ch = curl_init() or die(curl_error());
curl_setopt($ch, CURLOPT_URL,"http://www.bing.com/search?q=test&FORM=MSNH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data1=curl_exec($ch) or die(curl_error());
echo "".$data1."";
echo curl_error($ch);
curl_close($ch);
?>
CASE 2: Retreive the site content by posting the value from FORM for eg. contact form and other
<?php
$a=$_POST["a"]; // Form posted value
$ch = curl_init() or die(curl_error());
$params="a=$a";
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
curl_setopt($ch, CURLOPT_URL,"http://www.abc.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$data1=curl_exec($ch) or die(curl_error());
echo "".$data1."";
echo curl_error($ch);
curl_close($ch);
?>
CASE 3: Retrieve date from HTTPS site
<?php
$a=$_POST["a"];
$ch = curl_init() or die(curl_error());
$params="a=$a";
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
curl_setopt($ch, CURLOPT_URL,"http://www.abc.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, 'username:password'); // IF required
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,0);
$data1=curl_exec($ch) or die(curl_error());
echo "".$data1."";
echo curl_error($ch);
curl_close($ch);
?>
Wednesday, January 12, 2011
Easy way to pagination from smart mysql command
it's often fallowed by an OFFSET. These two togeather
are often used in pagination ( paging of results ) as in.
select * from thetable limit 10 offset 0
To find out how many rows would be available if one had not
used the LIMIT / OFFSET, one would alter the statement
above to look like this
select SQL_CALC_FOUND_ROWS * from thetable limit 10 offset 0
The return from both commands looks the same, so to get the
row count you need to issue a fallowup query
select FOUND_ROWS()
Friday, November 27, 2009
SimpleXML does not parse text inside CDATA tags in an XML.
SimpleXML does not parse text inside CDATA tags in an XML.
Consider the XML below:
$str = '';
$str.='some text goes here';
$str.='';
To parse it we use following syntax:
$xml = simplexml_load_string($str);
On printing it outputs:
SimpleXMLElement Object
(
[childNode] => some text goes here
)
Thats OK. Now the same xml but this time the text is enclosed in CDATA tags.
$str = '';
$str.='';
$str.=''
On printing this gives following output:
SimpleXMLElement Object
(
[childNode] => SimpleXMLElement Object
(
)
)
Yes its empty. This is because SimpleXML does not parse CDATA tags. All data enclosed within CDATA is ignored by SimpleXML parser.
Solution: Set the 3rd parameter to LIBXML_NOCDATA while parsing.
simplexml_load_string(
* The string to parse
* Optional parameter – to return an object of class specified in this parameter. (By default it returns a SimpleXMLElement Object)
* Also optional – libxml parameters can be specified as options. This option provides the solution to our CDATA problem
Provide the 3rd parameter LIBXML_NOCDATA and SimpleXML will consider CDATA nodes as text nodes and will parse them.
$xml = simplexml_load_string($str,'
This will output as desired:
SimpleXMLElement Object
(
[childNode] => some text goes here
)
Please note that using the third parameter requires PHP >=5.1 compiled with libxml.
Saturday, November 21, 2009
Brent's web log: jQuery social bookmarking plugin
Wednesday, November 11, 2009
Find how many number of result of your site on google
/* return result number */
function get_google_results($domain = 'vijayjoshi.org')
{
// get the result content
$content = file_get_contents('http://www.google.com/search?q=site:'.$domain);
// parse to get results
$result = get_match('/Results <b>(.*)from/isU',$content);
// echo $result;
// split the results
$split1 = explode('of about',$result);
// return result
return $split1[1] ? strip_tags($split1[1]) : 0;
}
/* helper: does the regex */
function get_match($regex,$content)
{
preg_match($regex,$content,$matches);
return $matches[1];
}
/* do it! */
echo 'vijayjoshi.org: '.get_google_results('vijayjoshi.org'); // 164
//echo 'Philogy.com: '.get_google_results('philogy.com'); // 164
?>
How to solve mysql ERROR 1118 (42000) Row size too large
I had this issue with MYSQL 5.7 . The following worked althoug...
-
Introduction to PHP PDO (PHP Data Objects) 1. What is PDO 2. What Databases does PDO support 3. Where do I begin? 4. Connect to ...
-
SQLSTATE[HY000]: General error MySQL: 1364 Field 'coloum' doesn't have a default value, how to solveWith the root access of the mysql, do the following changes select @@ GLOBAL . sql_mode In my case, I get the following: ONLY_FULL_...
-
I had this issue with MYSQL 5.7 . The following worked althoug...