顯示具有 php 標籤的文章。 顯示所有文章
顯示具有 php 標籤的文章。 顯示所有文章

2019年7月7日 星期日

RHEL / Centos 7 install PHP 7



https://footmark.info/linux/centos/centos7-install-php7x/

yum install -y wget yum-utils
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
rpm -Uvh epel-release-latest-7.noarch.rpm
rpm -Uvh remi-release-7.rpm
rm epel-release-latest-7.noarch.rpm remi-release-7.rpm

yum-config-manager --enable remi-php72
yum install -y php php-mysqlnd php-pdo php-xml \
php-pear php-devel php-mbstring re2c gcc-c++ gcc

2019年5月25日 星期六

[PHP] Public Function call URL


屬於 public.php

get_remote_data

function get_remote_data($url, $post_paramtrs = false) {
    $c = curl_init();
    curl_setopt($c, CURLOPT_URL, $url);
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    if ($post_paramtrs) {
        curl_setopt($c, CURLOPT_POST, TRUE);
        curl_setopt($c, CURLOPT_POSTFIELDS, "var1=bla&" . $post_paramtrs);
    } curl_setopt($c, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($c, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; rv:33.0) Gecko/20100101 Firefox/33.0");
    curl_setopt($c, CURLOPT_COOKIE, 'CookieName1=Value;');
    curl_setopt($c, CURLOPT_MAXREDIRS, 10);
    $follow_allowed = ( ini_get('open_basedir') || ini_get('safe_mode')) ? false : true;
    if ($follow_allowed) {
        curl_setopt($c, CURLOPT_FOLLOWLOCATION, 1);
    }curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 9);
    curl_setopt($c, CURLOPT_REFERER, $url);
    curl_setopt($c, CURLOPT_TIMEOUT, 60);
    curl_setopt($c, CURLOPT_AUTOREFERER, true);
    curl_setopt($c, CURLOPT_ENCODING, 'gzip,deflate');
    $data = curl_exec($c);
    $status = curl_getinfo($c);
    curl_close($c);
    preg_match('/(http(|s)):\/\/(.*?)\/(.*\/|)/si', $status['url'], $link);
    $data = preg_replace('/(src|href|action)=(\'|\")((?!(http|https|javascript:|\/\/|\/)).*?)(\'|\")/si', '$1=$2' . $link[0] . '$3$4$5', $data);
    $data = preg_replace('/(src|href|action)=(\'|\")((?!(http|https|javascript:|\/\/)).*?)(\'|\")/si', '$1=$2' . $link[1] . '://' . $link[3] . '$3$4$5', $data);
    if ($status['http_code'] == 200) {
        return $data;
    } elseif ($status['http_code'] == 301 || $status['http_code'] == 302) {
        if (!$follow_allowed) {
            if (empty($redirURL)) {
                if (!empty($status['redirect_url'])) {
                    $redirURL = $status['redirect_url'];
                }
            } if (empty($redirURL)) {
                preg_match('/(Location:|URI:)(.*?)(\r|\n)/si', $data, $m);
                if (!empty($m[2])) {
                    $redirURL = $m[2];
                }
            } if (empty($redirURL)) {
                preg_match('/href\=\"(.*?)\"(.*?)here\<\/a\>/si', $data, $m);
                if (!empty($m[1])) {
                    $redirURL = $m[1];
                }
            } if (!empty($redirURL)) {
                $t = debug_backtrace();
                return call_user_func($t[0]["function"], trim($redirURL), $post_paramtrs);
            }
        }
    } return "ERRORCODE22 with $url!!
Last status codes:" . json_encode($status) . "

Last data got
:$data";

}


?>



$PN=$_GET['PN'];
$BODY=$_GET['BODY'];


$URL = genurl($PN,$BODY);

if (PHP_SAPI == "cli") {
echo "$URL \n";
echo get_remote_data($URL);
}
else
{
echo "$URL
";

echo "

".get_remote_data($URL)."

";
}
function genurl( $PN , $BODY )
{

$R = 'http://localhost:18994/a.php?GID='. $GID .'&smbody='. $BODY ;
return $R ;

}


[PHP] 執行外部指令


PHP 執行外部指令使用

中文會亂碼,其實是SHELL的關系

綠色為正解

GET
header("Content-Type:text/html; charset=utf-8");
$GID=$_GET['GID'];
$SMS=$_GET['SMS'];
@$SMS2=$_GET['SMS2'];

echo "$GID
";
echo "$SMS
";
 $set_charset = 'export LANG=en_US.UTF-8;';
 system( $set_charset . '  /bin/java -Dgid=' . $GID . ' -cp /omscripts/test.jar   testUtil"' .$SMS . '"',$out  ) ;
?>

curl http://localhos/test/mp.php?GID=TESTGODE&SMS=中文測試

POST

header("Content-Type:text/html; charset=utf-8");
$GID=$_POST['GID'];
$SMS=$_POST['SMS'];


@$SMS2=$_GET['SMS2'];

echo "$GID
";
echo "$SMS
";
 $set_charset = 'export LANG=en_US.UTF-8;';
 system( $set_charset . '  /bin/java -Dgid=' . $GID . ' -cp /omscripts/test.jar   testUtil"' .$SMS . '"',$out  ) ;
?>
curl 'http://localhost/test/mp2.php' -d SMS=中文測試 -d GID=TESTGODE





2017年10月2日 星期一

php 連DB問題



SQL Server

https://pecl.php.net/package/sqlsrv/4.3.0/windows

 
php  7.1.7
xampp 版本
請下載   http://windows.php.net/downloads/pecl/releases/sqlsrv/4.3.0/php_sqlsrv-4.3.0-7.1-ts-vc14-x86.zip

php.ini 加入以下

extension=php_sqlsrv.dll
其他都一樣




Oracle

https://pecl.php.net/package/oci8

 
php  7.1.7
xampp 版本
請下載   http://windows.php.net/downloads/pecl/releases/oci8/2.1.7/php_oci8-2.1.7-7.1-ts-vc14-x86.zip

php.ini 加入以下
看自已的Client
extension=php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client
其他都一樣


https://pecl.php.net/package/pq

 
不用額外下載
php.ini 註解拿掉以下
extension=php_pgsql.dll
其他都一樣


connect DB
oracle mssql SqlServer EDB POSTGRSQL

2016年4月8日 星期五

php Oracle oci_connect Error



ORACLE
PHP


Call to undefined function oci_connect()

無法連線時檢查
php/ext
下面的OCI檔案喔



;extension=php_oci8.dll      ; Use with Oracle 10gR2 Instant Client
;extension=php_oci8_11g.dll  ; Use with Oracle 11gR2 Instant Client
extension=php_oci8_12c.dll

RHEL install EPEL

  https://www.linuxtechi.com/install-epel-repo-on-rhel-system/ EPEL dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest...