'php'에 해당되는 글 7건

 
  1. 2009.12.03 [JSP/PHP] JSP vs PHP 서버변수 모음
  2. 2009.11.09 freebsd 파티션깨짐 mysql, php 임시땜빵 log
  3. 2009.07.07 AMS Playlist + Player
  4. 2009.06.26 php urlencode, urldecode, mb_convert_encoding utf8 쿼리스트링
  5. 2009.06.25 php ffmpeg command example on windows
  6. 2009.06.25 [PHP] REGULAR EXPRESSION EXAMPLE preg_replace, preg_match, str_replace 1
  7. 2009.06.16 php로 thumbnail만들기
2009. 12. 3. 19:16 PROGRAMMING
[JSP/PHP] JSP vs PHP 서버변수 모음
PHP 변수 > JSP 클래스.메소드

SERVER_NAME > request.getServerName()
SERVER_SOFTWARE > request.getServletContext().getServerInfo()
SERVER_PROTOCOL > request.getProtocol()
SERVER_PORT > request.getServerPort()
REQUEST_METHOD > request.getMethod()
PATH_INFO > request.getPathInfo()
PATH_TRANSLATED > request.getPathTranslated()
SCRIPT_NAME, PHP_SELF > request.getServletPath()
DOCUMENT_ROOT > request.getRealPath("/")
QUERY_STRING > request.getQueryString()
REMOTE_HOST > request.getRemoteHost()
REMOTE_ADDR > request.getRemoteAddr()
AUTH_TYPE > request.getAuthType()
REMOTE_USER > request.getRemoteUser()
CONTENT_TYPE > request.getContentType()
CONTENT_LENGTH > request.getContentLength()
HTTP_ACCEPT > request.getHeader("Accept")
HTTP_USER_AGENT > request.getHeader("User-Agent")
HTTP_REFERER > request.getHeader("Referer")
2009. 11. 9. 12:14 COMPUTER
freebsd 파티션깨짐 mysql, php 임시땜빵 log
freebsd ver 5.0
몇달전에 /var 파티션 깨짐
당시 idc관리자가 fsck로 복구해줌
잘쓰다가 계속 깨지는듯한느낌
결국 php로 만든 게시판에서 업로드가 안됨
mysql재시작했더니 입출력오류(error 5)가 나면서 시작안됨
fsck로 해도 소용없음
my.cnf에서 temp디렉토리를 /var/tmp/에서 /tmp/로 변경
php.ini에서 temp디렉토리를 /var/tmp/에서 /tmp/로 변경
언제 뻗을지 모름 ㅋㅋ
ㄴㅁ SSN는 iptable을 도메인으로 걸라!

2009. 7. 7. 00:18 ETC
AMS Playlist + Player
플렉스와 에어 프레임웤으로 제작한 쥬크박스입니다.
- 파일시스템 디렉토리-리스팅 플레이리스트
- 사이트에서 air 프레임웤과 플레이어 직접설치
- 사이트에서 플레이어로 곡정보 인보킹

아직 플렉스의 한글문제로 한글파일이나 디렉토리는 지원하지 않습니다.
저작권 문제로 공개는 하지 않습니다. (테스트 해보고 싶으시면 메일이나 연락주시면, 계정정보를 알려드리겠습니다.)

server: windows 2003 server, apache, php, zend-amf
playlist, site: adobe flex 3
player, application: adobe air 1.5

http://music.nachal.com






2009. 6. 26. 10:10 PROGRAMMING
php urlencode, urldecode, mb_convert_encoding utf8 쿼리스트링
euc-kr의 페이지에서 utf-8페이지를 iframe으로 열고 변수를 전달해야할 때
urlencode같은 함수를 사용하면 글자들이 %를 포함하기때문에 sql에선 사용할수 없습니다.
고로, mysql 쿼리를 때리기 위해 순수한 utf8 한글로 변형해야 합니다.

1. 쿼리값을 디코딩한다. 그러면 디코딩은 되었지만, 출력해보면 utf-8페이지이기때문에 깨진 글자가 나올겁니다.
2. euc-kr을 utf-8로 인코딩한다.
3. mysql 쿼리실행
$keyword=$_REQUEST[q];
$keyword=urldecode($keyword);
$keyword=mb_convert_encoding($keyword,"UTF-8","EUC-KR");
or
$keyword=mb_convert_encoding(urldecode($_REQUEST[q]),"UTF-8","EUC-KR");
using
$sql="SELECT * FROM [table] WHERE [column] LIKE '%".$keyword."%'";


euc-kr에서 utf8로 변환
$STRING=mb_convert_encoding($STRING,"UTF-8","EUC-KR");


utf8에서 euc-kr로 변환
$STRING=mb_convert_encoding($STRING,"EUC-KR","UTF-8");


관련함수
utf8_encode, utf8_decode, base64_encode, base64_decode, rawurlencode, rawurldecode, urlencode, urldecode, parse_url,
mb_convert_encoding, mb_detect_encoding, mb_convert_variables...
2009. 6. 25. 19:02 PROGRAMMING
php ffmpeg command example on windows
생성된 flv에 메타태그가 없으면 클라이언트가 100%다운로드하기전까진 트래킹이 안됩니다.
(flvtool2 사용하여 추가할 수 있습니다.)

제가 사용하는 ffmpeg는 preset이 전체경로로만 가져올 수 있게되어있습니다.
(제 빌드는 tripp의 버전입니다. http://tripp.arrozcru.org)

동영상 가운데 5부분으로 썸네일 만들기
for($i=1;$i<6;$i++){
 $sec=round($duration/6*$i);
 exec("ffmpeg -itsoffset -".$sec." -i ".$filename." -an -r 1 -vframes 1 -s 120x100 -y ".$directory."thumb".$i.".png");
 $sec=$sec-2;
 $strParam.="&Thumb".$i."=".$thumburl."thumb".$i.".png&Time".$i."=".$sec;
 fwrite($fp,"thumb".$i."=".$sec."\n");
}

동영상 컨버팅하면서 텍스트파일로 진행상황 내보내기
ob_start();
passthru("ffmpeg -y -i ".$filename." -vcodec libx264 -vpre ".$directory."kaudo_libx264 -ar 44100 -ab 96k -b ".$_REQUEST['bitrate']." -f flv ".$output." 2>".$progress." | flvtool2 -U ".$output);
@unlink($filename);
ob_end_clean();
2009. 6. 25. 10:49 PROGRAMMING
[PHP] REGULAR EXPRESSION EXAMPLE preg_replace, preg_match, str_replace

PHP 정규표현식 예제

iframe 제거

$STRING=preg_replace("!<iframe(.*?)<\/iframe>!is","",$STRING);

script 제거

$STRING=preg_replace("!<script(.*?)<\/script>!is","",$STRING);

meta 제거

$STRING=preg_replace("!<meta(.*?)>!is","",$STRING);

style 태그 제거

$STRING=preg_replace("!<style(.*?)<\/style>!is","",$STRING);

&nbsp;를 공백으로 변환

$STRING=str_replace("&nbsp;"," ",$STRING);

연속된 공백 1개로

$STRING=preg_replace("/\s{2,}/"," ",$STRING);

태그안에 style= 속성 제거

$STRING=preg_replace("/ style=([^\"\']+) /"," ",$STRING); // style=border:0... 따옴표가 없을때
$STRING=preg_replace("/ style=(\"|\')?([^\"\']+)(\"|\')?/","",$STRING); // style="border:0..." 따옴표 있을때

태그안의 width=, height= 속성 제거

$STRING=preg_replace("/ width=(\"|\')?\d+(\"|\')?/","",$STRING);
$STRING=preg_replace("/ height=(\"|\')?\d+(\"|\')?/","",$STRING);

img 태그 추출 src 추출

preg_match("/<img[^>]*src=[\"']?([^>\"']+)[\"']?[^>]*>/i",$STRING,$RESULT);
preg_match_all("/<img[^>]*src=[\"']?([^>\"']+)[\"']?[^>]*>/i",$STRING,$RESULT);

호스트 추출

<?
preg_match("/^(http:\/\/)?([^\/]+)/i","http://www.kaudo.com/index.html",$matches);
$host = $matches[2];
echo$matches[0]."<br>";
echo$matches[1]."<br>";
echo$matches[2]."<br>";
?>
http://www.kaudo.com
http://
www.kaudo.com


매뉴얼:
http://kr2.php.net/manual/kr/function.preg-replace.php
http://kr2.php.net/manual/kr/function.preg-match.php
http://kr2.php.net/manual/kr/function.str-replace.php

2009. 6. 16. 16:08 PROGRAMMING
php로 thumbnail만들기
옛날에 쓰던 고대코드
당근 gd2는 깔려있어야 작동합니다. 출력은 jpg로 하게 되어있습니다.
원래는 apm환경에서 쓰던건데 방금 windows php에서 테스트해보고 올립니다.
사용법:
Thumbnail(넓이,높이,대상파일,출력파일(지정안해도됨));
Thumbnail(120,120,$dir.$newFilename);
소스:
function Thumbnail($Width,$Height,$File,$FileName=false){
	//Created by Kaudo www.kaudo.com
	global$File_type;
	$ImageSize=ShrinkImage(max($Width,$Height),$File);
	if(!$FileName && strpos($File,".")<0) $FileName=$File."_thumb";
	elseif(!$FileName) $FileName=substr($File,0,strrpos($File,"."))."_thumb.jpg";
	$ImageInfo=getimagesize($File);
	if($ImageInfo[0]==$Width && $ImageInfo[1]==$Height) copy($File,$FileName);
	else{
		$Image=imagecreatetruecolor($ImageSize[0],$ImageSize[1]);
		if($ImageInfo[2]==1) $Source=imagecreatefromgif($File);
		elseif($ImageInfo[2]==2) $Source=imagecreatefromjpeg($File);
		elseif($ImageInfo[2]==6) $Source=imagecreatefromwbmp($File);
		imagecopyresized($Image,$Source,0,0,0,0,$ImageSize[0],$ImageSize[1],$ImageInfo[0],$ImageInfo[1]);
		imagejpeg($Image,$FileName);}}

function ShrinkImage($Max,$Name){
	//Created by Kaudo www.kaudo.com
	if($Name) $Img=GetImageSize($Name);
	if($Img[0]>$Max || $Img[1]>$Max){
		$Value=$Max/$Img[0];
		for($i=0;$i<2;$i++) $Imgs[$i]=round($Img[$i]*$Value);
		if($Imgs[1]>$Max){
			$Value=$Max/$Img[1];
			for($i=0;$i<2;$i++) $Imgs[$i]=round($Img[$i]*$Value);}
	}else $Imgs=$Img;
	$Imgs[2]=$Img[0];
	$Imgs[3]=$Img[1];
	return $Imgs;}

최근에 올라온 글

최근에 달린 댓글