孫玄清
由于分享是沒有成功失敗的回調(diào)等機(jī)制,所以用戶是可以分享后獲得積分,然后再取消或刪除分享的。因?yàn)闆]有辦法做到絕對控制,所以一般都是直接綁定分享按鈕的click事件,調(diào)用ajax去為用戶增加積分。
沈嘯
思路很簡單:既然是唯一的URL地址,那么你用注冊的URL,比如是index.php/register/index,然后你在后面加上用戶的唯一參數(shù),用UID比較合適。就會(huì)變成index.php/register/index/id/001 這樣,然后你在注冊(register)控制器下的index方法中判斷一下isset($_GET[id]),如果有id,你就將對應(yīng)這個(gè)id的用戶積分+1。ps:tp有兩年沒用了,不太記得url的路由是什么樣子,上面的url只是隨便舉個(gè)列子。然后就是id參數(shù)后面的001最好加密一下,防止在發(fā)的時(shí)候被別人簡單的修改,一定要用對稱加密,不然你自己解密不了。
尼姑
如果你有手機(jī)網(wǎng)站,可以在微信公共號(hào)設(shè)置外部鏈接接入。 如果看了一篇移動(dòng)端網(wǎng)站想分享到微信中,可以在瀏覽器中分享出去。希望您采納我的建議!
鐘斌
你百度“百度分享”里面有各種分享代碼, 你照著那個(gè)來寫就好了。
冷云丹
方式1:用自己公眾號(hào)的sdk去實(shí)現(xiàn)分享;<br/> <script type="TEXT/javascript"> $(function () { if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) { if (window.location.href.indexOf("?mobile") < 0) { //判斷是手機(jī)端訪問 if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) { //判斷是UC瀏覽器 if (typeof (ucweb) != "undefined") { $(".btnShareFriends").click(function () { var Browser = new Object(); Browser.ios = /iphone/.test(Browser.userAgent); //判斷ios系統(tǒng) var title = "測試分享到朋友圈"; var img = ""; var url = location.href; if (Browser.ios) { ucbrowser.web_share(title, img, url, 'kWeixin', '', '@39yst', ''); } else { ucweb.startRequest("shell.page_share", [title, img, url, 'WechatFriends', '', '', '']); } }); $(".btnWeixinShare").click(function () { var Browser = new Object(); Browser.ios = /iphone/.test(Browser.userAgent); //判斷ios系統(tǒng) var title = "測試分享到朋友圈"; var img = ""; var url = location.href; if (Browser.ios) { ucbrowser.web_share(title, img, url, 'kWeixinFriend', '', '@39yst', ''); } else { ucweb.startRequest("shell.page_share", [title, img, url, 'WechatTimeline', '', '', '']); } }); } } else { alert("請使用手機(jī)UC瀏覽器測試"); } } else { alert("請使用手機(jī)訪問測試"); } } }); </script> </body> </html>這個(gè)需要注意uc只支持uc瀏覽器
李恢
第一, 用cookie, $_COOKIE第二, 用$_SESSION第三, global $var;第四, &引用第五, $GLOBALS引用
夏侯淵
1、簽名:url: 需要根據(jù)不同的頁面動(dòng)態(tài)獲取,url不能進(jìn)行encodeURIComponent,否則驗(yàn)簽會(huì)失敗 url不能包括微信添加的#后邊的部分,所以應(yīng)該處理為:window.location.href.split('#')[0] 簽名用的url必須是調(diào)用JS接口頁面的完整URL。nonceStr、timestamp:應(yīng)該動(dòng)態(tài)生成,而不能hardcode 簽名用的noncestr和timestamp必須與wx.config中的nonceStr和timestamp相同為安全考慮,簽名必須在后臺(tái)進(jìn)行,其他調(diào)用js在前臺(tái)進(jìn)行。2、ticket和accesstoken:accesstoken:同調(diào)用微信其他接口的accesstoken,必須全局緩存,以免影響其他業(yè)務(wù),即是說:微信所有業(yè)務(wù)應(yīng)該用同一個(gè)accesstoken去調(diào)用微信接口,而不能自己刷新accesstoken。ticket:同accesstoken一樣,必須全局緩存,方式很多,可以放到數(shù)據(jù)庫,或者放到緩存。目前ticket的有效時(shí)間為2小時(shí),所以2小時(shí)內(nèi)ticket未過期時(shí),不能重復(fù)獲取,否則可能導(dǎo)致ticket獲取次數(shù)超過限額,導(dǎo)致sign失敗。3、注意代碼執(zhí)行順序首先應(yīng)該獲取簽名,簽名獲取后在調(diào)用wx.config方法,然后再執(zhí)行wx.ready、wx.error方法。4、其他每個(gè)頁面加載完成后都應(yīng)該重新從后臺(tái)獲取簽名信息,避免簽名失敗具體開發(fā)步驟詳見官方文檔5、官方常見問題及處理方法:調(diào)用config 接口的時(shí)候傳入?yún)?shù) debug: true 可以開啟debug模式,頁面會(huì)alert出錯(cuò)誤信息。
蕭璉
申請應(yīng)用AppKey申請方法:訪問友推網(wǎng)站后臺(tái),登錄后進(jìn)入應(yīng)用列表,添加需要集成友推組件的App,如下圖,添加成功后可獲取應(yīng)用的AppKey。如何把a(bǔ)pp分享到微信2申請社交平臺(tái)appkey集成前您需要為您的應(yīng)用在各大社交網(wǎng)站的開放平臺(tái)申請賬號(hào)并通過審核,否則只能調(diào)用系統(tǒng)的分享菜單,無法跟蹤分享的回調(diào)事件及統(tǒng)計(jì)平臺(tái)如何把a(bǔ)pp分享到微信3引用youtui庫項(xiàng)目將youtui-lib項(xiàng)目庫和應(yīng)用工程放在同一個(gè)目錄下在PackageExplorer中右鍵點(diǎn)擊工程的根目錄,選擇Properties(屬性),然后點(diǎn)擊,在Android選項(xiàng)點(diǎn)擊Add添加youtui-lib如何把a(bǔ)pp分享到微信4注冊需要分享的平臺(tái)1.配置各分享平臺(tái)key,該配置文件為youtui_sdk.xml,配置完放入工程的assets文件夾。2.如果需要分享到哪個(gè)平臺(tái)就將該平臺(tái)的Enable屬性設(shè)置為true.3.如果需要將某個(gè)平臺(tái)排列到前面,只需要改變它在youtui_sdk.xml文件中的位置即可。5各平臺(tái)需要注意的事項(xiàng):新浪微博:新浪微博需要驗(yàn)證應(yīng)用簽名,請一定要在新浪開放平臺(tái)管理中心應(yīng)用信息->基本信息->Android簽名包名信息配置該信息每次包名變化或者使用的.keystore變化都會(huì)導(dǎo)致應(yīng)用簽名變化,請重新到新浪微博開放平臺(tái)設(shè)置。運(yùn)行Demo時(shí)如果重新編譯,因?yàn)槭褂玫?keystore文件變化也會(huì)導(dǎo)致應(yīng)用簽名變化,導(dǎo)致Demo新浪微博分享無法正常工作,請運(yùn)行Demo時(shí)使用Demo工程包中提供的debug.keystore替換C:\Users\Administrator.android中的debug.keystore文件微信和朋友圈:微信和朋友圈也需要驗(yàn)證應(yīng)用簽名,請?jiān)谖⑿砰_放平臺(tái)管理中心修改應(yīng)用->開發(fā)信息配置。QQ和QQ空間:QQ和QQ空間使用的是騰訊開放平臺(tái)api,請?jiān)隍v訊開放平臺(tái)申請賬號(hào)和注冊應(yīng)用,請不要使用QQ互聯(lián)(用于網(wǎng)站賬號(hào)登錄)的配置,雖然都是騰訊的,但是兩個(gè)平臺(tái)并不通用,除了需要在youtui_sdk.xml配置信息,還需要在manifest文件中的android:scheme中的tencent后的一串?dāng)?shù)字換成自己應(yīng)用的appid。最后一行配置說明:選用調(diào)用系統(tǒng)分享菜單功能在AndroidManifest.xml注冊權(quán)限在AndroidManifest.xml注冊需要的Activity微信和朋友圈回調(diào)設(shè)置如果需要分享微信和朋友圈,必需建一個(gè)應(yīng)用包名+.wxapi的包,在該包下建WXEntryActivity.java,將該類繼承cn.bidaround.youtui.wxapi.WXEntryActivity即可(里面不用寫代碼)publicclassWXEntryActivityextendscn.bidaround.youtui.wxapi.WXEntryActivity{}如圖:(將com.xingxinglangtuoche替換成你應(yīng)用的package名,微信回調(diào)會(huì)使用到)如何把a(bǔ)pp分享到微信初始化友推開發(fā)者請?jiān)谧约旱某绦蜷_始,最好是在MainActivity的onCreate方法調(diào)用YtTemplate.init(this)初始化友推sdk,這樣友推sdk才能進(jìn)行后續(xù)調(diào)用(否則分享等操作會(huì)出現(xiàn)空指針異常),例如:protectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);YtTemplate.init(this);/初始化友推/initView();}應(yīng)用退出時(shí):在您項(xiàng)目的出口Activity的onDestroy方法的第一行插入下面的代碼YtTemplate.release(this);此方法用于釋放內(nèi)存,統(tǒng)計(jì)用戶使用情況,一旦調(diào)用了release,就必須重新調(diào)用init才能使用友推的功能,否則會(huì)出現(xiàn)空指針異常;創(chuàng)建ShareData實(shí)例,調(diào)用該實(shí)例的set方法設(shè)置需要分享的數(shù)據(jù):創(chuàng)建ShareData實(shí)例,調(diào)用該實(shí)例的set方法設(shè)置自己需要分享的數(shù)據(jù),關(guān)于該實(shí)例具體內(nèi)容見下文,如果只是分享應(yīng)用則只需要設(shè)置setIsAppShare(true)就可以分享應(yīng)用在友推后臺(tái)填寫的信息和下載鏈接。ShareData包含的字段:isAppSharetextimagePathimageUrldescriptiontitletarget_url判斷是否為分享應(yīng)用待分享的文字,短信要小于70個(gè)字符,微博要小于140個(gè)字符,如果需要分享鏈接,最好將鏈接url放在最后待分享的本地圖片地址,分享圖片的話需要在本地和網(wǎng)絡(luò)圖片中選一,如果都有則優(yōu)先分享本地圖片待分享網(wǎng)絡(luò)圖片url,分享圖片的話需要在本地和網(wǎng)絡(luò)圖片中選一,如果都有則優(yōu)先分享本地圖片待分享內(nèi)容的描述待分享內(nèi)容的標(biāo)題待分享內(nèi)容的跳轉(zhuǎn)鏈接通過創(chuàng)建該類實(shí)例,調(diào)用實(shí)例的set方法設(shè)置這些參數(shù),例如:ShareDatashareData=newShareData();shareData.isAppShare=false;//設(shè)置為true則分享的信息從友推后臺(tái)填寫的應(yīng)用信息中讀取,可動(dòng)態(tài)更新,后面的值不用設(shè)置。shareData.setDescription("友推積分組件");shareData.setTitle("友推分享");shareData.setText("通過友推積分組件,開發(fā)者幾行代碼就可以為應(yīng)用添加分享送積分功能,并提供詳盡的后臺(tái)統(tǒng)計(jì)數(shù)據(jù),除了本身具備的分享功能外,開發(fā)者也可將積分功能單獨(dú)集成在已有分享組件的app上,");shareData.setTarget_url("");shareData.setImageUrl("");shareData.setImagePath("");各個(gè)平臺(tái)分享數(shù)據(jù)的限制和注意事項(xiàng):因?yàn)楦鱾€(gè)平臺(tái)的分享限制,請分享時(shí)盡量分享圖片+鏈接,依靠鏈接來了解信息1)微信朋友圈微信分享為linkcard形式,超出的文字部分不會(huì)顯示2)新浪微博很低版本的新浪微博不支持發(fā)多類型微博,進(jìn)行圖文分享時(shí)只會(huì)分享圖片,新浪微博分享消息最長為140字3)QQ、QQ空間QQ分享的消息最長40字,分享的標(biāo)題最長30字,多余的部分將被忽略,description將被忽略QQ空間分享的消息最長200字,分享的標(biāo)題最長600字,多余的部分將被忽略,description將被忽略4)騰訊微博只有image(imagePath或imageUrl)和text被分享,其他字段忽略,騰訊微博分享消息最長為140字5)人人網(wǎng)只有image(imagePath或imageUrl)和text被分享,其他字段忽略6)短信只有text被分享,其他字段忽略7)郵件只有text被分享,其他字段忽略如何把a(bǔ)pp分享到微信調(diào)用友推分享推薦組件為應(yīng)用添加一個(gè)分享推薦按鈕,如:如何把a(bǔ)pp分享到微信在分享按鈕事件中調(diào)用youtui的組件即可,示例代碼:publicvoidonClick(Viewv){if(v.getId()==R.id.popup_bt){/調(diào)用友推分享推薦組件,YouTuiViewType類的常量為分享樣式參數(shù),目前支持白色列表和黑色網(wǎng)格兩種//創(chuàng)建分享的模板,第一個(gè)參數(shù)為activity,第二個(gè)參數(shù)為分享窗口樣式,第三個(gè)參數(shù)為是否需要積分/YtTemplateblackTemp=newYtTemplate(this,YouTuiViewType.BLACK_POPUP,false);//黑色網(wǎng)格樣式不需要積分活動(dòng)/YtTemplateblackTemp=newYtTemplate(this,YouTuiViewType.WHITE_LIST,ture);///白色列表樣式需要積分活動(dòng)ShareDatashareData=newShareData();shareData.isAppShare=false;//設(shè)置為true則分享的信息從友推后臺(tái)填寫的應(yīng)用信息中讀取,可動(dòng)態(tài)更新后面的值不用設(shè)置。shareData.setDescription("友推積分組件");shareData.setTitle("友推分享");shareData.setText("通過友推積分組件,開發(fā)者幾行代碼就可以為應(yīng)用添加分享送積分功能,并提供詳盡的后臺(tái)統(tǒng)計(jì)數(shù)據(jù),除了本身具備的分享功能外,開發(fā)者也可將積分功能單獨(dú)集成在已有分享組件的app上,快來試試吧");shareData.setTarget_url("");shareData.setImageUrl("");shareData.setImagePath("");blackTemp.setShareData(shareData);//設(shè)置默認(rèn)的分享數(shù)據(jù);shareData設(shè)置參看4.6//**如果要為某個(gè)平臺(tái)設(shè)置不一樣的分享信息。則單獨(dú)設(shè)置*///blackTemp.addData(YtPlatform.PLATFORM_QQ,shareData);//調(diào)出分享窗口blackTemp.show();//如果需要自定義分享事件,可以創(chuàng)建監(jiān)聽事件,然后在回調(diào)中處理YtShareListenerlistener1=newYtShareListener(){@OverridepublicvoidonSuccess(ErrorInfoarg0){}@OverridepublicvoidonPreShare(){}@OverridepublicvoidonError(ErrorInfoarg0){}@OverridepublicvoidonCancel(){}};//給新浪微博添加分享監(jiān)聽blackTemp.addListener(YtPlatform.PLATFORM_SINAWEIBO,listener1);//給QQ添加分享監(jiān)聽//blackTemp.addListener(YtPlatform.PLATFORM_QQ,listener2);}
人亡物在
引入js文件和css文件: 2.插件參數(shù)配置: //本地?cái)?shù)據(jù) var data =["java","javaee","jquery","c++","css","html","htm5","bb","ejb","c#"]; //開始 $().ready(function () { $("#autoComplete").autocomplete(data, { minChars: 0, max: 5,