新書介紹

《碼上就會:Flash CS3動畫設計寶典》
圖解ActionScript 3.0程式設計入門

碼上就會:Dreamweaver CS3 PHP, MySQL & AJAX

作者:趙英傑
印刷:彩色
定價:590 元
頁數:472頁
教學簡報檔:有(請向書籍經銷商索取)

詳細目錄

[ 2008/02/12 更新] 使用ActionScript 3.0的Timer類別製作計時器
[ 2008/02/22 更新] 書籍勘誤表
[ 2008/03/12 更新] ActionScript 3.0裡的stage(舞台), root和MainTimeline(主時間軸)
[ 2008/04/16 更新] 自動輪流播放Flash的FLV視訊檔

線上購書:

本書特色:

  • 淺顯易懂的ActionScript 3.0入門教材。
  • 輕鬆易懂的教學範例,囊括多種Flash CS3動畫製作秘訣,自學或教學兩相宜。
  • 精彩動畫與詳盡的ActionScript 3.0互動應用程式圖解,讓您完全瞭解動畫實作技巧以及互動程式開發。
  • 實用互動程式範例包括:刮刮樂、物件配對、動態選單、隨機動態文字特效、MP3播放器、讀取XML文件與RSS閱讀器。

所有互動影片程式皆以ActionScript 3.0語法撰寫。

精心挑選多個包含重要觀念的互動影片,替您打好繼續深究複雜程式的基礎。這些實用的影片包括:問答題測驗(學習控制文字欄位和條件判斷敘述)、隨機文字特效特效影片(亂數和迴圈程式)、動態選單製作(控制「顯示物件」與載入外部影片)、RSS閱讀器(解析XML文件與物件導向程式設計基礎)、刮刮樂影片(動態遮色片與程式繪圖)、MP3播放器(控制並載入聲音檔)、Google搜尋表單(網路連線)、拖放物件(物件配對)…等等。

底下是取自本書其中六頁的畫面,包含採用圖說解釋ActionScript 3.0語法以及應用程式架構(直接點圖可放大)。

   

  

 

《碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX》

碼上就會:Dreamweaver CS3 PHP, MySQL & AJAX

作者:趙英傑
印刷:彩色
定價:620 元

詳細目錄

[ 2007/08/06 更新] 書籍勘誤表
[ 2007/08/04 更新] 使用MAMP在Mac OS X上安裝Apache、MySQL與PHP
[ 2008/01/21 更新] 使用PHP程式一次上傳多個檔案
[ 2008/04/29 更新] 設定FCKeditor,讓使用者上傳檔案到自己的目錄

線上購書:

本書特色:

  • 簡單易懂的生動圖解說明PHP與SQL語法,及應用程式的執行架構。
  • 使用Dreamweaver視覺化編輯工具,輕鬆建立PHP + MySQL與AJAX應用程式。

目前佔有率最高的開放原始碼Apache網站伺服器,加上超人氣的MySQL資料庫與PHP程式語言,這個簡稱AMP(取自Apache, MySQL與PHP的首字母)的金三角組合,是今日許多網站的重要基石。

Dreamweaver則是目前在專業市場領域,最受設計師喜愛的網頁編輯工具。除了原本優異的CSS樣式編輯功能,以及包含PHP在內的視覺化伺服器端程式建置能力之外,CS3版本更加入了Spry AJAX框架——一組能大幅簡化開發人員建立AJAX網頁的程式庫,讓使用者透過簡單的幾個HTML標記設定,就能完成具備AJAX機制的互動網頁。

本書採用大量的圖解說明PHP與SQL的基本語法以及應用程式的執行架構,讓讀者在享受Dreamweaver視覺化編輯工具輕鬆建立PHP應用程式的同時,也能瞭解其背後的運作原理,打好繼續深究複雜程式的基礎。

底下是取自本書其中六頁的畫面,包含採用圖說解釋SQL語法、PHP程式指令、Cookie以及應用程式架構的頁面(直接點圖可放大)。

   

  

 

碼上就會Ruby On Rails

書名《碼上就會:Rails敏捷開發網站(Agile Web Development with Rails)》
翻譯:趙英傑、涂穎芳、張穎
定價:600元
出版:碁峰資訊股份有限公司
線上購書

假如你需要在短時間內完成一個高品質、美觀的Web應用程式,且該網站需要持續維護多年。

如果你也想在網站中採用AJAX之類的功能,讓網站反應迅速且更易於使用。此外,你也想要採用REST技術,讓web應用程式更容易和其他應用程式互動。

Ruby on Rails就是你正在找尋的技術。

Rails是個全功能的MVC網站框架(framework),幫助您建立高度結構化的應用程式。您專注於撰寫應用程式,而Rails將幫您打理好其他的工作。您甚至不必撰寫一行JavaScript程式碼,就能製作出包含JavaScript的應用程式。

本書全部重新改寫自獲獎(2006 Jolt Awards)的第一版本,包含Rails 1.2的新功能。透過這本書,您將能:

  • 撰寫出網路書店應用程式;
  • 瞭解Rails如何免除繁瑣的設定步驟以及應用程式的撰寫過程;
  • 瞭解如何使用Rails程式碼產生器;
  • 看看如何在應用程式中加入AJAX、REST、Web Service以及e-mail處理程式;
  • 透過內建的單元(unit)、函數以及整合測試框架,在開發過程中測試應用程式;
  • 簡易且安全地部署您的應用程式。

本書的作者瞭解Ruby,也瞭解Rails,作者群簡介:

  • Dave Thomas是Agile Manifesto以及Programming Ruby書籍的共同作者,他瞭解敏捷(agile)開發與Ruby,此外,身為積極的Rails開發者,他也瞭解Rails。
  • David Heinemeier Hansson是Rails框架的創作者。
  • Leon Breedt撰寫了Rails的web service元件。
  • Mike Clark是國際Rails講師以及測試技術的專家。
  • James Duncan Davidson管理許多Rails應用程式,並且巡迴世界各地演說Rails開發主題。
  • Justin Gehtland參與培訓AJAX, Web 2.0及Rails開發課程。
  • Andreas Schwarz撰寫了線上Rails安全手冊。

188 thoughts on “新書介紹

  1. 趙老師您好:
      謝謝您,我已經把檔案下載了,我會好好研讀的。另外,真的很希望老師您能再出書,因為對我們來說,老師您的書可真讓我們獲益不淺啊。

  2. 趙老師您好:

    這次趁著回台灣,買了-碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX-這本書
    K完後感覺對不是本科的我實在是受惠良多
    第十章的 AJAX呈現動態資料庫網頁有夠讚又實用
    就像以前買的flash書一樣好,真的很感謝您

    希望老師能在下次的PHP書籍能包含有『表單結合驗證碼』網頁的實例製作…謝謝您

  3. 趙老師您好:

    在Dreamweaver CS3 PHP、MySQL與AJAX-這本書 Chapter 10 如果想設計為可上傳2張圖片時,應如何加寫程式碼呢???

    實在是試了很久;還是沒辦法…

  4. 趙老師您好:

    在Dreamweaver CS3 PHP、MySQL與AJAX-這本書8-40頁提到啟用FCKeditor的上傳圖片興上傳flash影片功能。
    如果想讓使用者上傳到自己的目錄該如何做呢?例如 abc這個user就上傳到 /abc這個目錄 alice這個使用者就上傳到/alice這個目錄

  5. 老師好我想請問一下 因為目前正在學as2.0 大概2個月了
    可是在網路上好像大家已漸漸在學習3.o
    我想問一下我需要在從3.0學起嗎…
    因為想要找這方面的工作,一但學3.0 勢必又要從頭開始花時間學
    我實在不知如何取捨

    不知道老師能否給我建議….聽說明年4.0要出來…天阿那3.0還須要學嗎..
    好煩喔>

  6. hi qoo:

    新版本的Flash軟體,其程式語言仍是ActionScript 3.0,從2.0到3.0是個「革命性」的轉變,再發生這種變化的機會,可能是N年之後的事了。日後的發展,將是以AS 3.0為基礎,新增指令和功能。

    所以,不用擔心學了3.0語法後,又要面對新的語法,所謂「4.0語言」應該是誤傳。電腦這種東西,沒有必要從舊版本學起,但是網路上的資源仍舊是以as2.0和1.0的語法為大宗,所以瞭解as 2.0還是有好處啦。

    jeffrey

  7. 趙老師您好~因久仰您的大名~也拜讀過您不少作品~但對於Actionscript3.0總是一籌莫展~本身對FLASH已有概念~但程式碼的部分~看了趙老師的作品書籍~以及其他的相關工具書不下5本以上~但還是有點難以入門~想請問趙老師~對於完全對程式碼毫無基礎~也毫無概念的的初學者而言~要如何學習AS3.0??比如概念~邏輯等等~或者有沒有任何參考書即可以一一解釋每個程式碼的意義?因為實在非常渴望學會~卻老是看不懂~實在~實在有點心有餘而力不足~以上請叫趙老師~感謝趙老師百忙中抽空閱讀~也非常盼望趙老師給不才的小弟多多建議及指點~感激不盡

  8. 說「指點」不敢當…今天趁著賺到的颱風假期出去走走還差點迷路。底下是一點小小的心得分享:

    1. 程式不是靠電腦寫的,而是用筆跟紙演算出來的。
    2. 我常聽到有人說自己的「邏輯」不好,但我覺得問題不在邏輯觀念,而是搞不清楚程式的目的。

    這就好比從A點走到B點,走法有很多種,重點是,要先在紙上做好規劃,不要光用腦筋想。

    實際上,程式指令都是「英文」,也是令某些人感到難以將想法轉換為程式的原因之一。

    3. 程式指令大多是「有意義的英文單字組合」。例如,gotoAndPlay就是goto(跳到), And(及), Play(播放)的組合;addEventListener則是add(新增)、Event(事件)和Listener(偵聽器、監看器)的組合。

    閱讀程式指令時,多從字面上去瞭解指令名稱的含意,你會對它們更有感覺。

    4. 從簡單的程式著手,試著調整其中的參數,例如,控制影片片段物件的x, y屬性,改變某個變數值,看看會發生什麼變化。
    5. 大多數人都是在一次次的嘗試和挫折中學會程式設計的… have fun!

  9. 請問趙老師
    我在FLASH PLAYER 9中
    當A.SWF是以全螢幕開啟
    再按下開啟B.exe另開方式(fscommand(“exec”,”B.exe”);)
    並保留A.SWF
    可是在開啟B時
    A.SWF的全螢幕卻消失了
    這是為什麼
    有何方式可以解決

    謝謝趙老師 ^^

  10. hi 阿信:

    不要使用fscommand中的”fullscreen”指令,要在ActionScript 3.0中用全螢幕方式呈現Flash影片時,請在第一個影格加上底下的敘述:

    stage.displayState = StageDisplayState.FULL_SCREEN;
    stage.showDefaultContextMenu = false;
    stage.scaleMode = StageScaleMode.SHOW_ALL;

    這是ActionScript 3.0的新語法。

    jeffrey

  11. 不好意思~
    首先要先感謝老師出的書~~真的是很棒的教材~~獲益良多~
    再來~想請問一下趙老師,有什麼方法可以讓Flash與VC++溝通呢?
    因為製作的flash game要與VC++的介面溝通~要用哪個函數或是什麼方法才能夠使兩個進行溝通的動作呢?
    麻煩老師回答~~感謝你!!!^^

  12. 小圓:

    舊版本採用fscommand()和外部程式環境溝通,新的版本建議採用ExternalInterface類別,AS 3.0透過此類別的addCallback()方法,來建立回應外部程式碼呼叫的函數。

    jeffrey

  13. 老師您好!我是用as3
    我在index.swf中,放了三個按鈕。三個按鈕都用Loader的方式,載入game.swf。
    我希望三個按鈕可以帶不同的參數值過去,要怎麼做呢?
    因為我發現game.swf中,收不到index.swf所宣告的變數。

    另外,我想從上面這個想法做延伸。做一個小遊戲,在index.swf中,玩家可以選擇不同的對手,進入遊戲中(game.swf)的時候,因為帶入的參數不同,而有不同對手的感覺。這樣的設計架構是對的嗎?

  14. 補充一下:這是我在第一個按鈕寫的script

    var game:int;

    btn1.addEventListener(MouseEvent.CLICK, f1);
    function f1(e):void {
    game = 1;
    var request:URLRequest = new URLRequest(“game.swf”);
    var loader:Loader = new Loader();
    loader.load(request);
    this.addChild(loader);

    }

    這種寫法的另一個問題是,把game.swf載入了。但是原來在index.swf上的按鈕仍然存在。

    謝謝!

  15. 趙老師,您好!
    想請教有關「《碼上就會:Dreamweaver CS3 PHP、MySQL與AJAX》」:第九章的P09-50,AJAX版本的用戶註冊介面,有些疑問:除了用戶名稱檢查是重複,如果要加上不能用中文字的用戶名稱註冊,請問要如何操作?麻煩請趙老師示範,謝謝!

  16. hi 艾尔:

    Ruby on Rail那本书的简体版本,应该是由电子工业出版社发行的。至於其他两本书,其实我早已和北京的出版社签约,只是我这一阵子忙着其他事情,所以搁置到现在 :oops:

    谢谢你的关注!

    jeffrey

  17. 亞洲語系和西歐語系文字編碼的不同點,在於西歐語系一個字元佔用一個位元組(byte),而亞洲語系則需佔用2~3的位元組。

    PHP 4.0.6版本之後,提供一組處理多重字元的字串函數,其名稱用”mb_”開頭,例如,計算UTF-8格式字串長度的函數指令如下:

    mb_strlen(“中文字”, “UTF-8”); // 將傳回3

    相對地,計算單一位元組文字的字串函數,則沒有”mb_”開頭,例如,計算英文字串長度的指令敘述如下:

    strlen(“hello”); // 將傳回 5

    如果運用上面的指令計算中文字的話,它會把中文當成單一字元來計算,例如:

    strlen(“中文字”); // 將傳回 9

    我們可以運用這個特性來撰寫判斷字串是否為英文,PHP 範例程式如下:

    <?php
    $userName="中文字";
    $utf8_len = mb_strlen($userName,"UTF-8");
    $ascii_len = strlen($userName);

    echo "UTF-8格式的字串長度:" . $utf8_len . "<br />";
    echo "ASCII格式的字串長度:" . $ascii_len . "<br /><br />";

    if ($utf8_len == $ascii_len) {
    echo "允許註冊!";
    } else {
    echo "不能用中文名字註冊!";
    }
    ?>

  18. 感謝趙老師的解說及範例程式!

    在下想把老師範例檢查程式加入原本書的範例(p09-52~p09-53),因為這段很明白就是要檢查用戶輸入的字元長度,所以把老師的範例,加入書中程式碼(自己亂拼)所以行不通,網頁顯示是語法問題(php和javascript不知道要如何混者用),所以再麻煩趙老師指點,謝謝!

    以下是想直接把javascript的function中username參數,抓到php去判斷,如果是中文字就跳出一個javascript訊息,並讓使用者無法送出

    // 驗證用戶名稱
    function checkUsername(username) {
    ‘.”\n”;
    echo ‘alert(“‘.$username.’不能用中文名字註冊!”);’.”\n”;
    }
    ?>

    if(username.length >= 3) {
    Spry.Utils.loadURL(“GET”,”userchecker2.php?username=”+username, false, checkNameReult);
    } else {
    showMsg(“帳號不能少於三個字!”, “”, “textfieldInvalidFormatState”);
    }

  19. 過濾中文字的程式,可以從「僅允許英文、數字和特定的符號」方向來思考,如此一來,程式就簡單得多了,我最慢週二晚上回覆。

  20. 老師您好!以下是我做的一個鍵盤測試,發現了一個問題
    http://test.dgcolor.com.tw/test.htm

    用鍵盤方向鍵移動中間的狗狗時,都會先頓一下,才會開始移動。
    我的寫法是,在影格中寫
    var speed:int =5;
    stage.addEventListener(KeyboardEvent.KEY_DOWN, playerStateDown);

    function playerStateDown(e):void {
    switch (e.keyCode) {
    case Keyboard.UP : myDog.y -= this.speed;
    break;

    case Keyboard.DOWN :
    myDog.y += this.speed;
    break;

    …以下略…

    我希望可以按下鍵盤的時候,物件可以馬上移動…不要先頓一下…
    是不是寫法錯了。

  21. 抱歉!可能我問的不夠清楚。
    我指的並不是邏輯的問題,而是敏感度的問題。

    好像遊戲要閃子彈的時候,人在按按鍵的時候是很快的,忽左忽右的亂按,
    這時就可以感覺到flash的反應真的比其它程式慢了一點。

    而且同時按下上跟右的時候,狗狗不會往斜上方移動,而是上或右其中一向。

    好像有很多英文討論版都在問這一個問題,但是我都沒有看到解決的回答。

    以上…謝謝!

  22. 關於驗證註冊表單不是中文字的JavaScript程式,請將register_ajax.php裡的checkUsername()函數改成:

    function checkUsername(username) {
    var alphaNumExp = /^[a-zA-Z][0-9a-zA-Z_]{2,}$/;
    if(username.match(alphaNumExp)) {
    Spry.Utils.loadURL(“GET”,”userchecker.php?username=”+username, false, checkNameReult);
    } else {
    showMsg(“名字請用英文、數字和底線符號,並且不能少於三個字!”, “”, “textfieldInvalidFormatState”);
    }
    }

    謝謝!
    jeffrey

  23. 感謝趙老師,另外,再問趙老師,[a-zA-Z]和[0-9a-zA-Z_]好像php和javascript都通用?(因為在下有找到php檢查用戶名稱的程式碼中也用[a-zA-Z]、[0-9a-zA-Z_])

  24. 老師您好!真不好意思,最近問了你很多的問題…

    還有一個問題想請教你,只是不太容易表達

    library中的movieclip元件,都可以對應一組class類別,但是如果重複性高的時候,問題就來了。

    比如說寫一個撲克牌遊戲,library中就要輸入52張圖,如果每一個都寫一個as檔的話,真是是很可怕的事情。

    有沒有可能只寫一個class,但是它卻能抓library中不同的圖。

    s1 = new card(“s1”);//這張就抓library中,名為s1的圖

    s2 = new card(“s2”);//這張就抓library中,名為s2的圖

    …以此類推

    如果這樣的話,這個card的類別之中,是怎麼動態抓圖呢?

    謝謝!

  25. 不好意思!
    剛剛我是想出了一個方法,就是在一個movieClip中,做了52格不同圖片的keyframe。
    再利用屬性的不同,讓它停留在不同影格上。
    s1 = new card(1);//這張停在第1格
    s2 = new card(2);//這張停在第2格
    試了一下是可行的…

    只是老師如果有更好的方法的話,也請跟我說一下…謝謝!

  26. 老師~
    ACA國際認證 Adobe Photoshop CS3視覺設計與影像合成處理一書的p2-35頁,字體水平/垂直比例的解說和我們所學的觀念有出入,即垂直75%為何是字是細長的? 水平75%字是扁平的? 這在PS字元面板的顯示相反,有此疑問指教。

    [ cubie 編輯]
    問題轉移至:
    https://swf.com.tw/?p=134

  27. Hi~~趙老師您好

    真不好意思,又來麻煩您了
    請教您一個有關書上Dreamweaver cs3 配合AJAX表單的問題

    您的姓名:(必填) 需要提供一个值。 E-Mail TEL(必填) 需要提供一个值。 留言主题(必填) 需要提供一个值。 留言内容(必填) 需要提供一个值。   验证码(必填)  → 请填写验证码。  

    您的姓名:(必填)

    需要提供一個值。

    E-Mail

    TEL(必填)

    需要提供一個值。

    留言主題(必填)

    需要提供一個值。

    留言內容(必填)

    需要提供一個值。

     

    驗證碼(必填)

    →請填寫驗證碼。

     

    有時表單填寫好了
    卻發現驗證碼圖片未出現
    經過refresh後;填寫的東西只有email的欄位資料還在,其餘必填欄位的資料都沒了

    請教老師,我該如何修改才能在refresh後(重按驗驗證碼),還能保存原有已經填寫欄位的資料呢???

  28. 趙老師您好…

    請問你還有計畫出flash的書嗎?現在已經出到CS5…,雖然我已經一段時間沒買電腦書了,不過,只要你出的書,我還是會買啦!

    題外話,我個人現在也在高雄教學,對象都是職訓單位補助的失業者。其實flash的教學,對這些人來說,非常的困難。大部份的失業者,電腦程度很差(可能就是很差才找不到工作吧!)。AS3對這些人來說,根本是一場災難。
    這些失業者,有很多是根本不會電腦的阿公阿嬤…

    我曾試著教過一班as3…,天啊…慘不忍賭…

    後來我跟其它老師研究後,決定還是教as2。其實as2對他們來說,就有一定的困難度了。而且補習班有補導就業與繳交作品的壓力,只能先逼他們做出東西再說。

    程度更差的班,甚至談不到AS,只要說到影片片段內有自己的時間軸,可以放元件做動畫,有同學就不能接受了。我的媽阿…元件內放元件我竟然要解釋半個小時以上…

    更扯的是dreamweaver上了不下十堂課,還有人不會定義網站…我每次上課開dreamweaver就會做一次的動作,就是有人不會…。還有一個阿嬤跑來問我,學這個軟體是要做什麼?(就是做網頁啊!不然你來上什麼課…我心裡的OS)

    嘮嘮叨叨寫這些也沒別的事,只是最近教到一班程度很差…發洩一下而已。

  29. hi b翔:

    你的感受我可以理解,我也曾教過就業班。讓我感到訝異的是,其中有些大叔、大嬸的「副業」經營有成,有的做法拍屋、有些是股票族、有做直銷的,還有一位是小型晶圓代工廠的大股東,真是藏龍臥虎。

    因為Adobe的產品定位偏向專業設計人士,對一般大眾的確是有些難度,也許操作本身不難,但是要從頭到尾完成一個還算賞心悅目的作品,還不如用一些「罐頭特效」軟體來套招,會比較容易獲得成就感。

    話說回來,Flash CS5有個「程式片段」面板,收集一些立即可用的AS 3.0小程式片段(也可以自行增加),這對初學人士有些幫助,提供你參考。

    have fun!
    jeffrey

  30. 趙老師您好…又打擾你了

    有一個小問題,今天我測式了一些類別轉型的問題,結果如下

    myMovieClip 繼承 MovieClip 類別,並定義一個sayHi()的public function

    mpSprite 繼承 Sprite 類別 ,也定義一個sayHi()的public function

    第一次測式如下:

    var myMc:myMovieClip = new myMovieClip();
    var mySp:mySprite = new mySprite();

    myMc.sayHi();
    mySp.sayHi();

    這個當然沒問題,ok

    第二次測式如下:

    var myMc:myMovieClip = new myMovieClip();
    var mySp:mySprite = new mySprite();

    MovieClip(myMc).sayHi(); //這條沒問題
    Sprite(mySp).sayHi(); //這裡出現問題了

    轉型成上層類別之後,倒底子層定義的屬性還在不在?

    以上…謝謝

  31. 這個問題應該源自於Sprite不是動態類別,無法接收新增的屬性或方法,例如:

    var _mc:MovieClip = new MovieClip();
    var _sp:Sprite = new Sprite();

    _mc.myName = ‘jeff’; // OK!
    _sp.myName = ‘cubie’ // 不OK

    因此,當你把包含自訂方法的類別物件轉型成Sprite時,就會出現錯誤。

    have fun!
    jeffrey

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *