tag:blogger.com,1999:blog-54824186312471372442024-03-13T11:23:34.615+08:00Iphone code shareiphone xcode code exchange share
as well as ajax , apache settingchingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.comBlogger14125tag:blogger.com,1999:blog-5482418631247137244.post-28998891026929290182012-01-24T18:06:00.001+08:002012-01-24T18:10:42.747+08:00xcode uiscrollview with paging and zoomHere is a simple and sample code that demonstrate the photo slide function with zoom using uiscrollview. <br />
<br />
<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFVCLqr8xs04e-5dyxY50OMF3ItJKPODkHLkmeFmRF6-wn9ATk9-IG3xWN_dU4ijNsTA8HUq4K5XBETXWL2uarsLGmi_waEMBO-b5S4XqPx96a9QIn_8oL4iQtqkiX2HBTXPzy0JFfvAU/s1600/photo+1.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFVCLqr8xs04e-5dyxY50OMF3ItJKPODkHLkmeFmRF6-wn9ATk9-IG3xWN_dU4ijNsTA8HUq4K5XBETXWL2uarsLGmi_waEMBO-b5S4XqPx96a9QIn_8oL4iQtqkiX2HBTXPzy0JFfvAU/s320/photo+1.PNG" width="214" /></a></div><br />
<br />
this is the first photo <br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhtuPWJvlj36Ma_S2CybZUmfIeY-TLxDIswVuV5nou7o1o30RmNfY0kAQdfhtK0q4Zc8Bd8F-NRe36MnCk8VjROoMEDVvt8eJOBJGkHBy2tUxZjVlFMV2dR6OpPO6GlFemUoPi8MC-7f8/s1600/photo+2.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhtuPWJvlj36Ma_S2CybZUmfIeY-TLxDIswVuV5nou7o1o30RmNfY0kAQdfhtK0q4Zc8Bd8F-NRe36MnCk8VjROoMEDVvt8eJOBJGkHBy2tUxZjVlFMV2dR6OpPO6GlFemUoPi8MC-7f8/s320/photo+2.PNG" width="214" /></a></div><br />
<br />
sliding<br />
<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKCtNpKawTrKAHXrXWODLnxS-kIwkuW-C3sfrEzbl_87SlpAtto3b9TmqYjkPnRptTfkUVRknOfkWaIWzjY1BbhnTb19ZAWsspu2PCzVPE_26POZkkGSLgSmg4jAIYumOCK4XFgiCzkm0/s1600/photo+3.PNG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKCtNpKawTrKAHXrXWODLnxS-kIwkuW-C3sfrEzbl_87SlpAtto3b9TmqYjkPnRptTfkUVRknOfkWaIWzjY1BbhnTb19ZAWsspu2PCzVPE_26POZkkGSLgSmg4jAIYumOCK4XFgiCzkm0/s320/photo+3.PNG" width="214" /></a></div><br />
zooming in particular photo <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<b>1. first drag three photos to your project , size not important . </b><br />
<br />
<br />
<b>2 viewcontroller.h 's code </b><br />
<br />
<br />
#import <UIKit/UIKit.h><br />
<br />
@interface ViewController : UIViewController<UIScrollViewDelegate>{<br />
<br />
<br />
UIScrollView *bgScorllView; // background scrollview control the slide paging<br />
UIView *bgView; // background view is on the bgscrollview<br />
<br />
UIImageView *picImageView; // the imageview for the photo where in the current screen<br />
<br />
UIScrollView *picScrollView; // the scrollview for the current screen to preform zoom function<br />
<br />
UIImageView *preImageView; // the imageview for the left side of the current screen<br />
<br />
UIImageView *nextImageView; // the imageview for the right side of the current screen<br />
}<br />
<br />
@end<br />
<br />
<br />
<b>3. code for viewcontroller.m</b><br />
<b><br />
</b><br />
at viewdidload<br />
1. define the contentsize of the view , it 's for sliding and paging on the bgscrollview<br />
2. run loadPage<br />
<br />
at loadPage<br />
<br />
1. remove all subview at bgview first to save memory<br />
<br />
2. load the current screen scroll view and imagview<br />
<br />
3. add imageview at both sides of current screen , so even slide before reach that page , can see that images<br />
<br />
4. add tag for the current screen scrollview , so it won't be confused for uiscrollview delegate - (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView<br />
<br />
<br />
<b><br />
</b><br />
<b><br />
</b><br />
<br />
<div><div><br />
</div><div>#import "ViewController.h"</div><div><br />
</div><div>@implementation ViewController</div><div><br />
</div><div>int numberOfPhotos = 3;</div><div><br />
</div><div>int currentpage;</div><div><br />
</div><div>- (void)didReceiveMemoryWarning</div><div>{</div><div> [super didReceiveMemoryWarning];</div><div> // Release any cached data, images, etc that aren't in use.</div><div>}</div><div><br />
</div><div><br />
</div><div><br />
</div><div>-(void)loadPage :(int) page{</div><div> </div><div> currentpage = page;</div><div> </div><div> for (UIImageView *sView in bgView.subviews){</div><div> </div><div> </div><div> </div><div> NSLog(@"removesubview %@",sView);</div><div><br />
</div><div> </div><div> [sView removeFromSuperview];</div><div><br />
</div><div> }</div><div> </div><div> NSLog(@"page number %d",page);</div><div> </div><div> </div><div> UIImage *image = [UIImage imageNamed:[NSString stringWithFormat:@"iphonescroll%d.png",page]];</div><div> </div><div> picScrollView = [[UIScrollView alloc] initWithFrame:CGRectMake((page-1)*320+10, 10,300,440)];</div><div> picScrollView.delegate = self;</div><div> </div><div> picScrollView.maximumZoomScale =3;</div><div> picScrollView.minimumZoomScale =1;</div><div> </div><div> picScrollView.zoomScale =1;</div><div> </div><div> picScrollView.clipsToBounds = YES;</div><div> picScrollView.bounces = YES;</div><div> picScrollView.scrollEnabled = YES;</div><div> picScrollView.autoresizingMask = UIViewAutoresizingFlexibleHeight;</div><div> </div><div> picScrollView.tag = 5;</div><div> </div><div> </div><div> </div><div> picImageView = [[UIImageView alloc] initWithImage:image];</div><div> </div><div> </div><div> [picImageView setFrame:CGRectMake(0, 0, 300,440)];</div><div> </div><div> [picScrollView addSubview:picImageView];</div><div> </div><div> [bgView addSubview:picScrollView];</div><div> </div><div> </div><div> int nextpage = page +1 ;</div><div> </div><div> UIImage *nextimage = [UIImage imageNamed:[NSString stringWithFormat:@"iphonescroll%d.png",nextpage]];</div><div> </div><div> nextImageView = [[UIImageView alloc] initWithImage:nextimage];</div><div> </div><div> [nextImageView setFrame:CGRectMake((nextpage-1)*320+10, 10, 300,440)];</div><div> [bgView addSubview:nextImageView];</div><div> </div><div> </div><div> int prepage = page -1 ;</div><div> </div><div> UIImage *preimage = [UIImage imageNamed:[NSString stringWithFormat:@"iphonescroll%d.png",prepage]];</div><div> </div><div> preImageView = [[UIImageView alloc] initWithImage:preimage];</div><div> </div><div> [preImageView setFrame:CGRectMake((prepage-1)*320+10, 10, 300,440)];</div><div> [bgView addSubview:preImageView]; </div><div> </div><div> </div><div><br />
</div><div> </div><div> </div><div>}</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div>#pragma mark - View lifecycle</div><div><br />
</div><div>- (void)viewDidLoad</div><div>{</div><div> [super viewDidLoad];</div><div><span class="Apple-tab-span" style="white-space: pre;"> </span>// Do any additional setup after loading the view, typically from a nib.</div><div> </div><div> </div><div> </div><div> NSLog(@"%@",[UIScreen mainScreen]);</div><div> </div><div> bgScorllView = [[UIScrollView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];</div><div> [self.view addSubview:bgScorllView];</div><div> </div><div> int width = 320*numberOfPhotos;</div><div> </div><div> bgView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, width,460)];</div><div> </div><div><br />
</div><div> </div><div> [self loadPage:1];</div><div> </div><div> </div><div> [bgScorllView setContentSize:CGSizeMake(width,460)];</div><div> bgScorllView.pagingEnabled = YES;</div><div> </div><div> bgScorllView.delegate = self;</div><div> bgScorllView.backgroundColor = [UIColor blueColor];</div><div> </div><div> [bgScorllView addSubview:bgView];</div><div> </div><div> //[self.view addSubview:bgView];</div><div> </div><div>}</div><div><br />
</div><div><br />
</div><div>- (UIView *) viewForZoomingInScrollView:(UIScrollView *)scrollView</div><div>{</div><div> </div><div> //NSLog(@"viewforzooming scrollview tag %d",scrollView.tag);</div><div> </div><div> </div><div> return picImageView;</div><div>}</div><div><br />
</div><div><br />
</div><div>- (void)scrollViewDidZoom:(UIScrollView *)scrollView{</div><div> </div><div> //NSLog(@"scrollviewdidzoom scrollview tag %d %f",scrollView.tag,scrollView.zoomScale);</div><div> </div><div> </div><div>}</div><div><br />
</div><div>- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{</div><div> </div><div> </div><div> if (scrollView.tag == 0){</div><div> </div><div> //NSLog(@"viewdisscroll length %f",scrollView.contentOffset.x);</div><div> </div><div> </div><div> int pageNumber = floor(scrollView.contentOffset.x / 320 + 0.5) +1;</div><div> //NSLog(@"page number %d",pageNumber);</div><div> </div><div> </div><div> if (pageNumber != currentpage){</div><div> </div><div> [self loadPage:pageNumber];</div><div> </div><div> }</div><div> </div><div> </div><div> }</div><div> </div><div> </div><div>}</div><div><br />
</div><div>/*</div><div><br />
</div><div>- (void)scrollViewDidScroll:(UIScrollView *)scrollView{</div><div> </div><div> //NSLog(@"scrollviewdidscroll scrollview tag %d",scrollView.tag);</div><div> </div><div> if (scrollView.tag == 0){</div><div> </div><div> //NSLog(@"viewdisscroll length %f",scrollView.contentOffset.x);</div><div> </div><div> </div><div> int pageNumber = floor(scrollView.contentOffset.x / 320 + 0.5) +1;</div><div> //NSLog(@"page number %d",pageNumber);</div><div> </div><div> [self loadPage:pageNumber];</div><div> </div><div> </div><div> }</div><div>}</div><div>*/</div><div><br />
</div><div><br />
</div><div>- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView{</div><div> </div><div> if (scrollView.tag == 0 ){</div><div> </div><div> // NSLog(@"viewdidendscroll ");</div><div> </div><div> }</div><div> </div><div>}</div><div><br />
</div></div>chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-32025960817687688562011-06-28T18:02:00.000+08:002011-06-28T18:02:48.459+08:00check connection之前有文章講用 NSURLCONNECTION 既 TIMEOUT 用來 CHECK 部 IPHONE 係未 CONNECTED<br />
<br />
其實本身 APPLE 都出左個 CLASS,用來 CHECK <br />
1. connected <br />
2. wifi <br />
3. mobile network connection <br />
<br />
上網或係 XCODE 搵 reachability ,可以係 APPLE DOWNLOAD<br />
<br />
個 PACKAGE 有 reachability.m , 同埋 reachability.h<br />
<br />
要用個陣 抄入去係個 PROJECT 入边<br />
<br />
另外要加個 framework 叫 SystemConfiguration.framework <br />
<br />
<br />
以下係 EXAMPLE<br />
<br />
我用黎係未 CONNECTED 可以參考 。。或者可以參考 reachability.m <br />
<br />
TestConnection.h<br />
<br />
#import <UIKit/UIKit.h><br />
<br />
@class Reachability;<br />
<br />
@interface TestConnectionViewController : UIViewController {<br />
<br />
<br />
Reachability* internetReach;<br />
<br />
<br />
}<br />
<br />
@end<br />
<br />
<br />
TestConnection.m<br />
<br />
<br />
- (BOOL)checkInternetConnection{<br />
<br />
BOOL connected;<br />
<br />
internetReach = [[Reachability reachabilityForInternetConnection] retain];<br />
[internetReach startNotifier];<br />
NetworkStatus netStatus = [internetReach currentReachabilityStatus];<br />
<br />
if (netStatus == NotReachable) {<br />
NSLog(@"Internet Connection Fail");<br />
connected = NO;<br />
}else {<br />
NSLog(@"Internet Connection Success");<br />
connected = YES;<br />
}<br />
return connected;<br />
}<br />
<br />
<br />
//Called by Reachability whenever status changes.<br />
- (void) reachabilityChanged: (NSNotification* )note<br />
{<br />
Reachability* curReach = [note object];<br />
NSParameterAssert([curReach isKindOfClass: [Reachability class]]);<br />
BOOL internetConnection = [self checkInternetConnection];<br />
<br />
if (internetConnection){<br />
NSLog(@"connected");<br />
}else {<br />
NSLog(@"not connected");<br />
}<br />
}<br />
<br />
<br />
<br />
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.<br />
- (void)viewDidLoad {<br />
[super viewDidLoad];<br />
<br />
<br />
[[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachabilityChanged:) name: kReachabilityChangedNotification object: nil];<br />
<br />
<br />
<br />
BOOL internetConnection = [self checkInternetConnection];<br />
<br />
if (internetConnection){<br />
NSLog(@"connected");<br />
}else {<br />
NSLog(@"not connected");<br />
}<br />
<br />
<br />
}chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com1tag:blogger.com,1999:blog-5482418631247137244.post-37333737816215431632011-06-08T15:11:00.000+08:002011-06-08T15:11:05.309+08:00method ? function?我係 IPHONE 新手, 寫開 PHP , 開始見到 IPHONE D METHOD 真係睇到睇花 , 下边有個例子。。希望幫下好似我咁新手既人<br />
<br />
<style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px}
span.s1 {color: #bf2e9d}
span.Apple-tab-span {white-space:pre}
</style> <br />
<div class="p1">-(<span class="s1">int</span>)add : (<span class="s1">int</span>)first addto :(<span class="s1">int</span>) second{</div><div class="p2"><span class="Apple-tab-span"> </span></div><div class="p1"><span class="Apple-tab-span"> </span><span class="s1">int</span> ans;</div><div class="p1"><span class="Apple-tab-span"> </span>ans = first + second;</div><div class="p1"><span class="Apple-tab-span"> </span><span class="s1">return</span> ans;</div><div class="p2"><span class="Apple-tab-span"> </span></div><div class="p1">}</div><div class="p1"><br />
</div><div class="p1"><style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3f217c}
p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px}
span.s1 {color: #bf2e9d}
span.s2 {color: #000000}
span.s3 {color: #2832cf}
span.s4 {color: #2e595d}
span.s5 {color: #3f217c}
span.s6 {color: #d62b24}
span.Apple-tab-span {white-space:pre}
</style> </div><div class="p1"><title></title> <style type="text/css">
p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; color: #3f217c}
p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0px Menlo; min-height: 13.0px}
span.s1 {color: #bf2e9d}
span.s2 {color: #000000}
span.s3 {color: #2832cf}
span.s4 {color: #2e595d}
span.s5 {color: #3f217c}
span.s6 {color: #d62b24}
span.Apple-tab-span {white-space:pre}
</style> <br />
<div class="p1">- (<span class="s1">void</span>)viewDidLoad {</div><div class="p2"><span class="s2"> [</span><span class="s1">super</span><span class="s2"> </span>viewDidLoad<span class="s2">];</span></div><div class="p3"><span class="Apple-tab-span"> </span></div><div class="p1"><span class="Apple-tab-span"> </span><span class="s1">int</span> ans1;</div><div class="p1"><span class="Apple-tab-span"> </span><span class="s1">int</span> a = <span class="s3">10</span>;</div><div class="p1"><span class="Apple-tab-span"> </span><span class="s1">int</span> b = <span class="s3">11</span>; </div><div class="p3"><span class="Apple-tab-span"> </span></div><div class="p1"><span class="Apple-tab-span"> </span>ans1 = [ <span class="s1">self</span> <span class="s4">add</span>:a <span class="s4">addto</span>:b];</div><div class="p3"><span class="Apple-tab-span"> </span></div><div class="p1"><span class="Apple-tab-span"> </span><span class="s5">NSLog</span>(<span class="s6">@"%d"</span>,ans1);</div><div class="p3"><span class="Apple-tab-span"> </span></div><div class="p3"><span class="Apple-tab-span"> </span></div><div class="p1">}</div></div><div class="p1"><br />
</div><div class="p1"><br />
</div><div class="p1"><br />
</div><div class="p1">好簡單, 就係將兩個數加埋, </div><br />
chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-17088245547326720612011-05-31T11:32:00.001+08:002011-05-31T11:37:57.659+08:00uiwebview 用法uiwebview 好多人用, 因為 HTML 係大家常用, 習慣晒<br />
<br />
今次會講 3 種 LOAD 資料入 UIWEBVIEW 既用法<br />
<br />
個 UIWebView 叫 webView<br />
<br />
第一種係 CALL bundle 既 HTML File<br />
<br />
<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXt4FsD0C6gt3N74kRYSk9-7MeddWAAqDE8X-PU4oI4cwb79gkL6W7bOtOVbrKssOxuGzKEG9U1AMSxdEy4Uims2teUPwEWzAftJLwnyH7dCmKh1efG95pyC34MaqdHP3iPjeZLzUMoL4/s1600/9A06E06A-F1D2-45E2-9C03-BF6511CFA195.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXt4FsD0C6gt3N74kRYSk9-7MeddWAAqDE8X-PU4oI4cwb79gkL6W7bOtOVbrKssOxuGzKEG9U1AMSxdEy4Uims2teUPwEWzAftJLwnyH7dCmKh1efG95pyC34MaqdHP3iPjeZLzUMoL4/s1600/9A06E06A-F1D2-45E2-9C03-BF6511CFA195.jpg" /></a></div><br />
係 RESOURCES 內有 webview.html 同埋 images.jpeg<br />
<br />
<br />
<div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #7340a3;">NSString</span> *path = </div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span>[[</span><span style="color: #7340a3;">NSBundle</span><span style="color: black;"> </span>mainBundle<span style="color: black;">] </span>pathForResource<span style="color: black;">:</span><span style="color: #d62b24;">@"webview"</span><span style="color: black;"> </span>ofType<span style="color: black;">:</span><span style="color: #d62b24;">@"html"</span><span style="color: black;">];</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 13.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #7340a3;">NSURL</span>*url = [<span style="color: #7340a3;">NSURL</span> <span style="color: #3f217c;">fileURLWithPath</span>:path];</div><br />
<br />
<div style="color: #7340a3; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span>NSURLRequest<span style="color: black;"> *request=[</span>NSURLRequest<span style="color: black;"> </span><span style="color: #3f217c;">requestWithURL</span><span style="color: black;">:url];</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 13.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span>[<span style="color: #4b8186;">webView</span> <span style="color: #3f217c;">loadRequest</span>:request];</div><br />
<br />
第二種係 CALL WEBSERVER 上边既 FILE<br />
<br />
<br />
<div style="color: #d62b24; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: #7340a3;">NSURL</span><span style="color: black;">*url = [</span><span style="color: #7340a3;">NSURL</span><span style="color: black;"> </span><span style="color: #3f217c;">URLWithString</span><span style="color: black;">:</span>@"http://xxxxxxx.com/webviewtest.php?num=8"<span style="color: black;">];</span></div><div style="color: #d62b24; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #d62b24; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"></span></div><div style="color: #7340a3; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span>NSURLRequest<span style="color: black;"> *request=[</span>NSURLRequest<span style="color: black;"> </span><span style="color: #3f217c;">requestWithURL</span><span style="color: black;">:url];</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 13.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span>[<span style="color: #4b8186;">webView</span> <span style="color: #3f217c;">loadRequest</span>:request];</div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><br />
</div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><br />
</div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><br />
</div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><br />
</div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;">第三種係 LOAD STRING 入 WEB VIEW</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;">其實最簡單, 但係如果會用到 bundle 裡边既其他 FILE 就要留意</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;">loadHTMLString<span style="color: black;">:webstring </span>baseURL<span style="color: black;">:nil , </span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-style-span" style="font-size: small;">如果無需要用到 BUNDLE 既 FILE 或者其他 URL 既 FILE , BaseURL:nil 就 OK </span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-style-span" style="font-family: Times; font-size: small;">但係今次例子會用到 BUNDLE 上边既 FILE </span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"></span></span></div><div style="color: #d62b24; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: #7340a3;">NSString</span><span style="color: black;"> *webstring =</span>@"<h1>testing</h1>hello hello<img src=images.jpeg>"<span style="color: black;">;</span></div><br />
<div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span><span style="color: #7340a3;">NSString</span><span style="color: black;"> *imagePath=[[</span><span style="color: #7340a3;">NSBundle</span><span style="color: black;"> </span>mainBundle<span style="color: black;">] </span>resourcePath<span style="color: black;">];</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span>imagePath = [imagePath </span>stringByReplacingOccurrencesOfString<span style="color: black;">:</span><span style="color: #d62b24;">@"/"</span><span style="color: black;"> </span>withString<span style="color: black;">:</span><span style="color: #d62b24;">@"//"</span><span style="color: black;">];</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span>imagePath = [imagePath </span>stringByReplacingOccurrencesOfString<span style="color: black;">:</span><span style="color: #d62b24;">@" "</span><span style="color: black;"> </span>withString<span style="color: black;">:</span><span style="color: #d62b24;">@"%20"</span><span style="color: black;">];</span><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span>[</span><span style="color: #4b8186;">webView</span><span style="color: black;"> </span>loadHTMLString<span style="color: black;">:webstring </span>baseURL<span style="color: black;">:</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span> [</span><span style="color: #7340a3;">NSURL</span><span style="color: black;"> </span>URLWithString<span style="color: black;">:[</span><span style="color: #7340a3;">NSString</span><span style="color: black;"> </span>stringWithFormat<span style="color: black;">:</span><span style="color: #d62b24;">@"file:/%@//"</span><span style="color: black;">,imagePath]]];</span></div><br />
<br />
<div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="font-family: Times; font-size: small;"><br />
</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><br />
</div>chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-76689548158544384172011-05-31T09:43:00.000+08:002011-05-31T09:43:22.888+08:00udid<div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="color: black;">上次講到 UDID , </span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="color: black;"><br />
</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-style-span" style="color: black;">下边就係獲取機中 UDID , 呢個 ID 唔同, 所以當有 ACTION 行, 你可以經 WEB PASS 個 UDID 去你自已個 SERVER , 咁就可以數住個 USER 用左幾多次, 就算係洗左個 PROGRAM 再裝番都無用</span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #3f217c; font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"> </span></span><span style="color: #7340a3;">NSString</span><span style="color: black;"> *udid = [[</span><span style="color: #7340a3;">UIDevice</span><span style="color: black;"> </span>currentDevice<span style="color: black;">] </span>uniqueIdentifier<span style="color: black;">];</span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px; min-height: 13.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span></div><div style="font: 11.0px Menlo; margin: 0.0px 0.0px 0.0px 0.0px;"><span class="Apple-tab-span" style="white-space: pre;"> </span><span style="color: #3f217c;">NSLog</span>(<span style="color: #d62b24;">@"%@"</span>,udid);</div>chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-22930214177970338242011-05-29T13:26:00.003+08:002011-05-31T08:25:16.464+08:00<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmK0KTygivctYaxkETR6utDHXjgRS-lNHbfbfn-V5UOVLTENl3OwQeROmuwDKL8Fe3NyG272s5jjOTqSj7Ccdz100nR3OuiOFT1czFGwWiSxSTFYbXBlMV7uOCh-W2yqRM4aNDC5IREWE/s1600/photo.PNG" onblur="function anonymous()
{
try {parent.deselectBloggerImageGracefully();} catch(e) {}
}"><img alt="" border="0" id="BLOGGER_PHOTO_ID_5612005568466935362" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhmK0KTygivctYaxkETR6utDHXjgRS-lNHbfbfn-V5UOVLTENl3OwQeROmuwDKL8Fe3NyG272s5jjOTqSj7Ccdz100nR3OuiOFT1czFGwWiSxSTFYbXBlMV7uOCh-W2yqRM4aNDC5IREWE/s320/photo.PNG" style="cursor: hand; float: left; height: 320px; margin: 0px 10px 10px 0px; width: 214px;" /></a><br />
<div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div><br />
</div><div>如果想 USER 用特定次數便提示用家比 “錢” 買 完整版 , 可以用呢個方法 </div><div><br />
</div><div>本身 APPS 有個叫nsuserdefault 可以儲存資料, 例如APPS 登入資料, 用過幾次等</div><div><br />
</div><div>今次呢個 APPS 如果用家用過一次便會收 nsuserdefault 既 counter +1 , 除左儲 integer , 可以儲 string , 什至 array 都得</div><div><br />
</div><div><br />
</div><div><br />
</div><div>係你個 ACTION 個度加入。</div><div><br />
</div><div><br />
</div><div><div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #bf2e9d;">int</span><span style="color: black;"> </span><span style="color: #4b8186;">calCounter</span><span style="color: black;"> = [[</span><span style="color: #7340a3;">NSUserDefaults</span><span style="color: black;"> </span>standardUserDefaults<span style="color: black;">] </span>integerForKey<span style="color: black;">:</span><span style="color: #d62b24;">@"counter"</span><span style="color: black;">];</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #4b8186; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span>calCounter<span style="color: black;"> +=</span><span style="color: #2832cf;">1</span><span style="color: black;">;</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span>[[</span><span style="color: #7340a3;">NSUserDefaults</span><span style="color: black;"> </span>standardUserDefaults<span style="color: black;">] </span>setInteger<span style="color: black;">:</span><span style="color: #4b8186;">calCounter</span><span style="color: black;"> </span>forKey<span style="color: black;">:</span><span style="color: #d62b24;">@"counter"</span><span style="color: black;">];</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span>[[</span><span style="color: #7340a3;">NSUserDefaults</span><span style="color: black;"> </span>standardUserDefaults<span style="color: black;">] </span>synchronize<span style="color: black;">];<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #4b8186;">calCounter</span><span style="color: black;"> = [[</span><span style="color: #7340a3;">NSUserDefaults</span><span style="color: black;"> </span>standardUserDefaults<span style="color: black;">] </span>integerForKey<span style="color: black;">:</span><span style="color: #d62b24;">@"counter"</span><span style="color: black;">];</span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #3f217c;">NSLog</span><span style="color: black;">(</span>@"new counter %d"<span style="color: black;">,</span><span style="color: #4b8186;">calCounter</span><span style="color: black;">);<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;">最後個兩句係比 CONSOLE 睇結果, 加唔加無乜所謂 </span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;">係每次行 ACTION 前后 </span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;">加上</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"></span></span></div><span class="Apple-style-span" style="color: black;"></span><br />
<div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;">calcounter%10 == 0 , 即係每 10 次問一問 , 然后加入一個 FUNCTION</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"><br />
</span></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-style-span" style="font-size: medium;"></span></span></div><br />
<div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><br />
</div><br />
<div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #4b8186;">calCounter</span><span style="color: black;"> = [[</span><span style="color: #7340a3;">NSUserDefaults</span><span style="color: black;"> </span>standardUserDefaults<span style="color: black;">] </span>integerForKey<span style="color: black;">:</span><span style="color: #d62b24;">@"counter"</span><span style="color: black;">];</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #4b8186; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #bf2e9d;">if</span><span style="color: black;"> ( </span>calCounter<span style="color: black;">%</span><span style="color: #2832cf;">10</span><span style="color: black;"> == </span><span style="color: #2832cf;">0</span><span style="color: black;"> && </span>calCounter<span style="color: black;"> ></span><span style="color: #2832cf;">1</span><span style="color: black;">){</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #7340a3;">NSString</span><span style="color: black;"> *alertMessage = [</span><span style="color: #7340a3;">NSString</span><span style="color: black;"> </span><span style="color: #3f217c;">stringWithFormat</span><span style="color: black;">:</span>@"%d times calculation has been made"<span style="color: black;">,</span><span style="color: #4b8186;">calCounter</span><span style="color: black;">];</span></div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="color: #7340a3; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span>UIAlertView<span style="color: black;"> *alert = [[</span>UIAlertView<span style="color: black;"> </span><span style="color: #3f217c;">alloc</span><span style="color: black;">] </span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #3f217c;">initWithTitle</span><span style="color: black;">:</span>@"Go Get Full Version"</div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span class="Apple-style-span" style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span><span style="color: #3f217c;">message</span>:alertMessage</span></div><div style="color: #3f217c; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span>delegate<span style="color: black;">:</span><span style="color: #bf2e9d;">self</span><span style="color: black;"> </span>cancelButtonTitle<span style="color: black;">:</span><span style="color: #d62b24;">@"Ignore"</span><span style="color: black;"> </span></div><div style="color: #d62b24; font: 11px Menlo; margin: 0px;"><span style="color: black;"><span class="Apple-tab-span" style="white-space: pre;"></span></span><span style="color: #3f217c;">otherButtonTitles</span><span style="color: black;">:</span>@"Buy Full Version"<span style="color: black;">,</span><span style="color: #bf2e9d;">nil</span><span style="color: black;">];<span class="Apple-tab-span" style="white-space: pre;"> </span></span></div><div style="font: 11px Menlo; margin: 0px;"><span class="Apple-tab-span" style="white-space: pre;"></span>[alert <span style="color: #3f217c;">show</span>];</div><div style="font: 11px Menlo; margin: 0px;"><span class="Apple-tab-span" style="white-space: pre;"></span>[alert <span style="color: #3f217c;">release</span>];</div><div style="font: 11px Menlo; margin: 0px; min-height: 13px;"><span class="Apple-tab-span" style="white-space: pre;"></span></div><div style="font: 11px Menlo; margin: 0px;"><span class="Apple-tab-span" style="white-space: pre;"></span>}<span class="Apple-tab-span" style="white-space: pre;"> </span></div></div>chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com1tag:blogger.com,1999:blog-5482418631247137244.post-43243186852874582702008-02-11T10:25:00.001+08:002011-05-31T09:37:38.564+08:00做第一個 .com 網站因為本身係屋企, 唔同 datacenter 有 nameserver, 所以要借助第三者幫手 , 叫做 DNS redirect<br />
出面有好多類似既服務 , 例如 zoneedit.com, 或者 no-ip.com , 香港都有類似既服務, 每年 100 蚊, 不個 zoneedit 每個 account 有 5 個 free, 服務亦穏定<br />
<br />
1.首先你要 check 下你 domain 仲有冇 , 可以去 checkdomain.com 睇下<br />
<br />
2.如果有 , 可以去 zoneedit 開一個 account , 佢地會比一個 name server address 例如<br />
ns12.zoneedit.com<br />
ns15.zonnedit.com<br />
<br />
<br />
3.然後你要去 register 一個 account, 可以有好多地方, 例如 007names.com , 每個 domain 都係 us8, 至於要香港 domain , 就一定要去 hkdnr.net.hk,<br />
<br />
申請 domain , 係 nameserver 入番頭先比你個個 nameserver<br />
<br />
4.然後你去番 zoneedit , 將個 website 指向番自己部電腦, 入番個 ip 你可以有唔同既 subdomain , 指向唔同 ip 既電腦如果簡單 d , 你可以入 *.domain.com 即係無論個 subdomain 入乜都係去番同一個 ip 既電腦.<br />
<br />
5 跟住去番自己個 apache folder , 開番 conf folder 裡面既 httpd.conf<br />
<virtualhost><br />
ServerName <a href="http://www.domain.com/">www.domain.com</a> <br />
serveralias domain.com *.domain.com <br />
DocumentRoot e:/Apache2/htdocs/domain<br />
</virtualhost><br />
<br />
6. 跟住你去番 htdocs 開番個 domain 個 folder , 放番你 d html file , 咁就成功<br />
<br />
7 你可以試打 <a href="http://www.domain.com/">http://www.domain.com</a> 就攪掂, 不過提提你, 新申請既 domain 要 幾個鐘至 1 日至可以生效chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-66232672657826379242008-02-11T08:32:00.000+08:002008-02-11T08:35:19.970+08:00directory list呢樣野可大可少... 有好多人都會將 d csv , 或者 txt file 放左係個 directory, 如果比你睇到, 都幾危險<br /><br />其實為免各大 apache setting 有乜唔同起見, 最好係每個 directory 起碼加個 index.html 檔案chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-57259697712974758582008-02-02T19:39:00.001+08:002011-05-31T09:36:19.093+08:00Apache 你要知既野係 apache 裡面有個叫 conf 既 folder, 裡面有個叫 httpd.conf 既 file, 就係控制 web server 個 setting<br />
<br />
例如 容唔容許 directory listing, 設定邊個 directory 要 密碼至可以 access , 或者之後你將 <a href="http://www.xxxx.com/">www.xxxx.com</a> forward 入你個 server , 都係靠佢控制<br />
<br />
唔好亂攪, 可以連 server 都 boot 唔起<br />
<br />
有關 setting , 可以參考 <a href="http://httpd.apache.org/docs/2.0/">http://httpd.apache.org/docs/2.0/</a><br />
<br />
另外有個 logs 既 directory ,呢個就係放瀏覽紀錄, 做得網主就一定要識睇, 被人 hack 或者有乜不尋常既活動就攪呢個chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-81528830972585117002008-02-01T10:21:00.000+08:002008-02-01T10:28:19.366+08:00安裝 web server都係按 setup 裝, 不過提議大家裝係唔同 os 既 partition , os 死左既話, 唔駛 set 過晒 d 野咁辛苦<br /><br />裝過陣, 就咁裝係 d: (或者你既 partition) , 因為個 program 會自己起個 folder 叫 \Apache2<br /><br />如果成功裝完之後 , 你可以係 browser , 打入 <a href="http://localhost/">http://localhost</a> , 見到一個網頁, 就代表你安裝成功<br /><br />你既 web 內容就係放係 \Apache2\htdocs\<br /><br />你可以將你既 html 放係裡面<br /><br /><br />除左 localhost 之外 , 127.0.0.1 都可以 , 你亦可以睇下你部機個 ip 係乜 <a href="http://xxx.xx.xx.xx/">http://xxx.xx.xx.xx</a> 不過就要睇下 firewall settingchingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-68816091765250253142008-01-31T21:38:00.001+08:002008-02-01T10:20:05.678+08:00所需軟件Web Server - Apache <a href="http://www.sendspace.com/file/rlqf7r">http://www.sendspace.com/file/rlqf7r</a><br /><br />PHP - <a href="http://www.sendspace.com/file/xssfm4">http://www.sendspace.com/file/xssfm4</a><br /><br />Database server - mysql <a href="http://www.sendspace.com/file/ws41h9">http://www.sendspace.com/file/ws41h9</a><br /><br />phpMyAdmin - a very good tools to manage MySql Server - <a href="http://www.sendspace.com/file/47sk2o">http://www.sendspace.com/file/47sk2o</a><br /><br />Mail Server - SMTP , QK <a href="http://www.sendspace.com/file/ykq6ml">http://www.sendspace.com/file/ykq6ml</a><br /><br />Remote control program VNC - <a href="http://www.sendspace.com/file/saiyoe">http://www.sendspace.com/file/saiyoe</a><br /><br />除左 qksmtp 會有 expiry .. 其他都係 open source programchingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-67773428700874012872008-01-31T21:23:00.000+08:002008-01-31T21:31:46.856+08:00windows XP , windows 2000其實兩個都可以用, 不過你要諗下你個網站係人多 visit , 定無乜人玩<br /><br />因為本身 windows xp 設定左同一時間最多 10 人連機 , 即係如果你個網站已經有 10 人連機, 第 11 個人就睇唔到<br /><br />講個故事,<br /><br />曾經係網站有幅相, 比人連結係一個好勁既討論區, 由於個幅相太多人睇, 而每次睇的時候便等於有人連線到我的 server ,而當時行緊 xp , 所以成個網站就咁死左, 要通知討論區人同我刪相<br /><br />不過就算係 2000 , 都可能要死, 一幅相有 20k , 如果同一時間有 1000 人睇, 就好短時間有 20M 流量, 一樣整死部機chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-75720606654213572372008-01-31T21:11:00.000+08:002008-02-01T09:58:19.227+08:00SERVER 有 d 乜基本有個 os , 可以係 linux 或者係 windows , 不過係家中通常都用 windows , 因為部 server 機好多時都會用埋上下網, 做其他野 , 所以 windows 方便 d<br /><br />我本身唔用 java, asp, 所以有以下設置.<br /><br />跟住一個叫 web server , 出面有好多程式, 不過最多人用既 係 Apache, apache.org, 我用既係 apache 2.0.46 (win32) , 用左兩年<br /><br />Script , 如果你既網頁係有互動, 就要程式, 最常用就係 php , 簡單易學, 網上資源亦多, <a href="http://www.php.net/">http://www.php.net/</a> , 記住要用 5.0 以上 .<br /><br />database server, 如果要有資料庫既話, 可以用 mysql, 好用強大 mysql.com<br /><br />以上三樣都係 open source 可以免費用 , 如用埋 linux , 呢四個組合剛好 Linux Apache Mysql Php - LAMP .<br /><br /><br />Mail SERVER , 如果要經網頁發電郵, 就要裝一個, 好似 qk 等 .<br /><br /><br />有齊以上野的話, 就可以開始建一個網站..chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0tag:blogger.com,1999:blog-5482418631247137244.post-39790932706330769632008-01-31T21:09:00.000+08:002008-01-31T21:11:02.573+08:00家中自設 server以前一路都係將網頁 host 係出面, 不過有左 bb100 之後, 速度快左變轉左 host 係屋企<br /><br />所以希望係度同大家分享家中自設 server 的經驗chingshttp://www.blogger.com/profile/02802248221764047454noreply@blogger.com0