ラベル PHP の投稿を表示しています。 すべての投稿を表示
ラベル PHP の投稿を表示しています。 すべての投稿を表示

2010年11月20日土曜日

VBScript:HTTPファイルアップロードする

Option explicit
dim xmlhttp
dim strm
dim strUrl
dim strFile
dim strTgtFile

'ファイル送信用のスクリプト
strUrl = "http://192.168.1.210/put.php"
'送信ターゲット
strFile = "c:¥Windows¥System.ini" '送信ファイル名
'//strTgtFile = "aa/あいう.dat" '保存ファイル名
strTgtFile = "upload.dat"

set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")
'これが一番いいと思われるが全ての環境で使えるわけではない setTimeOutが可能
'set xmlhttp = CreateObject("MSXML2.XMLHTTP")
'set xmlhttp = CreateObject("Microsoft.XMLHTTP")
'「msxml3.dll: エラーを特定できません」エラーとなる場合 Streamに対する制限
set strm = CreateObject("ADODB.Stream")
strm.Mode = 3 'for LoadFromFile
strm.Type = 1 'Binary
strm.Open
strm.LoadFromFile( strFile )
'このオプションは MSXML2.ServerXMLHTTPのみ
xmlhttp.setTimeouts 180 * 1000 , 180*1000 , 180*1000 , 180*1000

xmlhttp.open "PUT",strUrl 'PUTメソッドはダメな時はPOST
'xmlhttp.open "POST",strUrl
xmlhttp.setRequestHeader "cmd","put"
xmlhttp.setRequestHeader "hirake","goma"
xmlhttp.setRequestHeader "fname", strTgtFile

xmlhttp.send strm.read(-1)

strm.Close
'HTTPステータスを表示
WScript.Echo xmlhttp.status
'サーバからの応答を表示
WScript.Echo xmlhttp.responseText

set strm = Nothing
set xmlhttp = Nothing


http://blog.jojo.jp/?eid=1331836

2009年2月12日木曜日

PHP:日本語文字列を指定文字数で分割して配列に

mb_language('Japanese');
mb_internal_encoding('SJIS');

$str = "あいうえおかきくけこaiueo";
$array = mb_str_split($str, 4);
print_r($array);

function mb_str_split($str, $length = 1) {

if ($length <1) return FALSE;

$result = array();

for ($i = 0; $i <mb_strlen($str); $i += $length) {

$result[] = mb_substr($str, $i, $length);

}

return $result;

}
http://www.developer0000.jp/2007/11/28/1975/

2009年2月4日水曜日

CakePHP:コントローラで複数のモデルを使用する

class HogeController extends AppController {

var $name = 'Hoges';
var $uses = array('Fuga','Hoge'); ← ここに他のモデルの名前を入れる。

2008年12月26日金曜日

PHP 入出力ストリーム

php://stdin
php://stdout
php://stderr
php://output
php://input
php://filter (PHP 5.0.0 以降で使用可能)
php://memory (PHP 5.1.0 以降で使用可能)
php://temp (PHP 5.1.0 以降で使用可能)

http://zapanet.info/phpdoc/wrappers.php.html

2008年12月19日金曜日

Flash Lite1.1とPHPセッションの連携

Flash Lite1.1では起動時にSWFに値を渡す方法(URLパラメータやparamタグ)が使えないようなので、SWFにセッションIDを渡すことができません。
http://www.1x1.jp/blog/2006/12/flashlite11_php_session.html

2008年12月16日火曜日

PHP:不要なパラメータを除去してリダイレクト

$jump_url="tekitou/?PHPSESSID=p5beb53ui77cms9a7smqcr5aa0&end=aa&a=2&s%5B0%5D=2&s%5B1%5D=3&w=1&logout=1&";
//不必要なパラメータを置換
$jump_url = preg_replace("/PHPSESSID=\w{26}/", "" , $jump_url);
$jump_url = preg_replace("/logout=\d/", "" , $jump_url);
//不要なパラメータのごみ取り
$jump_url = preg_replace("/&{2,}/", "&" , $jump_url);
$jump_url = preg_replace("/\?{2,}/", "?" , $jump_url);
$jump_url = preg_replace("/(\?&|&\?)[\?&]*/", "?" , $jump_url);
$jump_url = preg_replace("/[\?&]$/", "" , $jump_url);
if(preg_match("/[\?&]/",$jump_url)){
$jump_url .= "&".SID;
}else{
$jump_url .= "?".SID;
}
header("Location: ".$jump_url);

2008年11月20日木曜日

cakephp: レイアウトの使用

レイアウトの使用
/app/views/layouts/temp.thtml

<html>
<head>
<title><?=$title_for_layout?></title>
</head>
<body>
<?=$content_for_layout?>
</body>
</html>

コントローラー内
var $layout = "temp";
functon hoge(){
$this->pageTitle = "タイトル";
}

エレメントの使用
/app/views/elements/ele.thtml

テンプレート内
<?=$this->renderElement("ele",array("message" => "メッセージ"))?>

cakephp:デフォルトとは違うDBとTableを使用する時のmodelの設定

class Hoge extends AppModel {

var $name = 'Hoge';
var $useTable = 'H_Hoge';
var $useDbConfig = "hogehoge";
var $primaryKey = "hoge_id";
}

2008年11月15日土曜日

PHP:WEBページの取得

$_rawData = getURL( "http://www.example.com/" );

function getURL( $pURL ) {
$_data = null;
if( $_http = fopen( $pURL, "r" ) ) {
while( !feof( $_http ) ) {
$_data .= fgets( $_http, 1024 );
}
fclose( $_http );
}
return( $_data );
}

2008年11月10日月曜日

PHP:web 上のファイルが存在するかチェックする方法

$url='​http://www.example.com/images/pic01.jpg';​
$x=get_headers($url);

print $x[0];
?>

存在する場合の例は、 HTTP/1.1 200 OK
存在しない場合の例は、 HTTP/1.1 404 Not Found

http://okwave.jp/qa4295497.html

$url='http://www.example.com/images/pic01.jpg';
$x=get_headers($url);
if(preg_match("/OK$/",$x[0])){
echo "OK";
}else{
echo "NOT FOUND";
}

?>