Serendipity: Kesimpulan
Salam semua..
nampaknya terpaksalah aku ringkaskan je blog aku ni.. sebab aku agak kesuntukan masa untuk
mengarang panjang2.. sorry banyak, dan juga aku tulis dalam bahasa rojak juga lah ya untuk kali
ni. Yang penting kita dapat kongsikan input yang diberikan.
Banyak juga yang telah aku pelajari dari pertandingan ini sama ada secara langsung atau tidak
langsung. Pada mulanya aku agak task yang diberikan agak mudah. Ya lah convert database sahaja..
Tapi bila aku mula buat agak banyak kerumitan dan dugaan yang aku jumpa satu demi satu.
Walaupun serendipity mempunyai database layer yang tersendiri.. pada awalnya aku rasanya ianya
tidak banyak membantu. Bayangkan terdapat banyak if ($database == mysql) else if else bla bla di
setiap file..
aku terfikir, takkan aku nak portkan mssql aku perlu tambah lagi else if untuk setiap query..
berapa banyak file aku nak edit? dah la malam je ada masa.. :p so aku tanamkan dalam misi aku
"aku cuma ingin buat perubahan seminimum yang mungkin" dalam task ini.
aku pasti korang paham maksud aku. sebabnya sql statement antara mysql dengan mssql tidak sama
terutama nya untuk select statement dan create table..
contoh2 nya, limit(mysql) top(mssql)
mysql(group by) mysql(kena group by semua yg ada pd select)
Mysql ada Full search text seperti (match against function) Mssql pula lain.
Table type yang berbeza seperti auto increment,
Kalau field tu jenis text tak boleh gorup by, kena convert tu kepada lain format.
dan banyak lagi, aku pun dah lupa bila nak ingat balik... nanti ada masa aku cerita lagi..
Jadi step yang pertama aku buat ialah convert secara manual setiap database type mysql kepada
mssql.. kesemuanya ada 22 table secara default. Kemudian barulah aku 'dump'kan sql dia..
Satu demi satu error aku jumpa bila try connect ke database mssql tersebut.
Dibawah adalah antara beberapa error yang aku sempat copy paste.:
Error
Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library
(such as ISQL) or ODBC version 3.7 or earlier.
(ni field type punya error)
The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or
LIKE operator.
(error macam ni kelaur bila try group by, sort text field type. Ni aku rasa korang biasa jumpa)
Warning: mssql_query() [function.mssql-query]: message: Cannot update identity column 'id'.
(severity 16)
(ha, error yang ni pelik sedikit, error ini terjadi bila ada sql calling cuba update identity
field. tapi aku lagi pelik dangan kod sql asal ni, kenapa perlu nak update semula primary id
where primary id bla bla.. cth mcm ni.. update table set id='1 bla bla bla where id='1'... kan
pelik tu..tak pernah aku jumpa lagi..)
Server: Msg 8120, Level 16, State 1, Line 1
Column 'e.id' is invalid in the select list because it is not contained in either an aggregate
function or the GROUP BY clause.
(error ni kelaur bila select list ada tertinggal dalam group by list.)
dan yang lain2 tu aku tak sempat copy..
kebanyakkan error yang datang adalah dari sql yang mempunyai "GROUP BY CLAUSE".
Jadi aku terfikir kalau ada function untuk aku split dan susun balik mysql statement tu kepada
mssql statement.. kan lebih baik? jadi aku mula memeningkan kepala dengan meng"google" kesana
sini..
Nah! aku dah jumpa, MySql parser/wrapper dibuat oleh tom schaeffer..
(http://www.phpclasses.org/browse/package/5007.html)
satu class yang agak advance dan menarik..
Tapi, setalah lama aku bermain2 dengan class tu, nampaknya ia tak sesuai.. kerana banyak field
name database serendipity yang bertembung dengan 'reserve keyword' class tersebut..
Alahai, nampak tiada jalan mudah untuk berjaya. Terpaksa la aku buat sendiri function sql parser
agar bersesuaian dengan mysql statement serendipity.
dibawah ada contoh sql parser yang aku buat yang agak dumbo.. Tapi function ni selekeh sangat
lah, agak berserabut. Tidak apa lah, apa yang penting aku nak pastikan dia "UP" dulu..
function parse_sql_select($sql) {
$con = array("SELECT","FROM","WHERE","GROUP BY","ORDER BY","LIMIT");
$fr_format = array("e.body",
"e.extended",
"c.category_description",
"co.body");
$to_format = array("CONVERT(varchar(8000),e.body) AS body",
"CONVERT(varchar(8000),e.extended) AS extended",
"CONVERT(varchar(8000),c.category_description) AS category_description",
"CONVERT(varchar(8000),co.body) AS body");
$ii=0;
foreach ($con as $con2) {
if (preg_match("/$con2/", $sql)) {
if ($ii==0) {
$extract[$ii] = spliti ($con2, $sql);
}
else {
$co = $ii-1; $extract[$ii] = spliti ($con2, $extract[$co][1]);
}
if ($stat_con) {
$sqlarray[$stat_con] = array($stat_con => $extract[$ii][0]);
if ($sqlarray[$stat_con]) {
if ($sqlarray[$stat_con] == $sqlarray["SELECT"]) { $array2merge =
$sqlarray["SELECT"]; }
else { $array2merge += $sqlarray[$stat_con]; }
}
}
$stat_con = $con2;
$ii++;
}
}
$sqlarray[$stat_con] = array($stat_con => $extract[$ii-1][1]);
$array2merge = array_merge($array2merge, $sqlarray[$stat_con]);
$sql_array = array_merge($array2merge);
//echo "<pre>";
//print_r($sql_array);
//echo "$sql<br>";
if ($sql_array["LIMIT"]) {
if (preg_match("/,/", $sql_array["LIMIT"])) {
}
else { $top = "TOP" . $sql_array["LIMIT"]; }
}
$select_statement = $sql_array["SELECT"];
if ($sql_array["GROUP BY"]) { $modify_select = str_replace($fr_format, $to_format,
$select_statement); }
else { $modify_select = $select_statement; }
if ($modify_select) { $compile = "SELECT " . $top . $modify_select; }
if ($sql_array["FROM"]) { $compile .= "FROM" . $sql_array["FROM"]; }
if ($sql_array["WHERE"]) { $compile .= "WHERE" . $sql_array["WHERE"]; }
if ($sql_array["GROUP BY"]) {
if (preg_match("/AS/", $sql_array["SELECT"])) {
$as_remove = explode(",", $sql_array["SELECT"]);
$compile .= " GROUP BY ";
$group_unsplit = "";
foreach ($as_remove as $k=>$v) {
if (preg_match("/AS/", $v)) {
$exp = explode("AS", $v);
$group_unsplit .= $exp[0];
}
else { $group_unsplit .= $v; }
}
$str = preg_replace('/\s+/', ' ', $group_unsplit);
$group_array = explode(" ", $str);
foreach ($group_array as $key => $value) {
if (is_null($value) || $value=="" || $value=="''") {
unset($group_array [$key]);
}
}
$fr_format = array("e.body",
"e.extended",
"c.category_description",
"co.body");
$to_format = array("CONVERT(varchar(8000),e.body)",
"CONVERT(varchar(8000),e.extended)",
"CONVERT(varchar(8000),c.category_description)",
"CONVERT(varchar(8000),co.body)");
$imp_group = implode(",", $group_array);
$compile .= str_replace($fr_format, $to_format, $imp_group);
}
else {
$imp_group = " GROUP BY" . $modify_select;
$compile .= str_replace($fr_format, $to_format, $imp_group);
}
}
if ($sql_array["ORDER BY"]) { $compile .= " ORDER BY" . $sql_array["ORDER BY"]; }
//echo $sql."<br>$compile";
return $compile;
}
aku harap korang dapat idea apa sebenarnya yang aku nak buat dengan function tersebut..
function tersebut boleh diringkaskan lagi, tapi aku tak mahir pakai regex...
Jadi, terselamat lah aku daripada perlu mengedit semua 300 lebih sql statement serendipity..huh!
function tersebut langkah demi langkah aku modify agar bersesuaian dengan serendipity..
Ada masa aku nak sediakan dengan adodb pula..
Bila mana kebanykkan error telah aku perbaiki.. Aku cuba alihkan fokus kepada installer pula.
Ya.. file yang aku modify disini ialah include/functions_installer.inc.php. Aku tambah satu
condition untuk mssql..
Dalam proses aku menyediakan installer, mulanya aku nak pakai db scheme yang asal (sql/db.sql)
aku cuma buat replacement kepada.. contoh replacement array yang di buat kepada db.sql;
static $search = array(
'{AUTOINCREMENT}',
'{PRIMARY}',
'{UNSIGNED}',
'{FULLTEXT}',
'{FULLTEXT_MYSQL}',
'{BOOLEAN}',
'{UTF_8}',
"default '1'",
'int(1)',
'int(4)',
'int(10)',
'int(11)',
'text not null',
'text NOT NULL',
'text',
"'0'",
"'1'",
"date NOT NULL",
'default null',
'default NULL',
"default ''"
);
static $replace = array(
'INT IDENTITY (1, 1) NOT NULL',
'',
'',
'',
'',
'varchar (300) NOT NULL',
'',
'default 1 NULL',
'int',
'bigint',
'bigint',
'bigint',
'text NOT NULL',
'text NOT NULL',
'text',
"0",
"1",
"datetime NOT NULL",
'NULL',
'NULL',
''
);
$query = trim(str_replace($search, $replace, $query));
Memang berjaya pada mulanya, tapi dalam mssql perlu dinyatakan jika file tersebut default null.
dan aku buat lagi satu db schame untuk mssql.. (include/db_mssql.sql)
Kadang2 ada juga error disebabkan mssql return value true, tetapi sebernarnya null.. jadi aku
trim je value tu..
Ok.. bila aku test di localhost semua dah jalan dengan baik, aku pun start upload di server..
Sini ada problem pada mulanya, sebab masalah file permission. (Terima kasih kepada saudara
nadzree) Dan juga ada error..
Ada error page not found, aku tak pasti apa aku edit, di plesk.. tapi aku delete Index.php dan masukkan index.php. Sebab mulanya aku kena taip http://fradze.dev.lamp2win.com/mssql/index.php baru jalan.. Kalau http://fradze.dev.lamp2win.com/mssql/ tak jalan..
Banyak lagi aku nak share sebenarnya, tapi tangan aku dah penat menaip.. Dan banyak lagi tanggungjawab lain.. :)
So sebagai kesimpulan, boleh dikatakan serendipity boleh berjalan dengan baik di platform IIS dan MSSQL..
File yang diubah: db.inc.php, functions_config.inc.php , serendipity_plugin_comments.php , functions_entries.inc.php, functions_comments.inc.php, functions_installer.inc.php
File baru : db_mssql.sql, mssql.inc.php







http://www.bareyourfingers.com
I now even have other pair of five fingers shoes and I don’t think I’ll ever sneakers or rubber shoes compared to this.vibram five fingers ksoworn with shorts come off more like socks.Still that Classics are the most minimal fivefingers sprint that can still function in outdoor use.
xbox live code generator
xbox live code
Refurbished cubicles
furniture liquidators
office furniture liquidators
mens earrings
mens jewellery
used cubicles
Princess Cut Engagement Rings
restore america plan
We all have to pay taxes to maintain the structures of this great nation that allow each of us to thrive and prosper.
Thanks for sharing this application here. I needed it for my project. The reason i liked it because it is very simple and easy as you told above. I admire you for making very simple and useful application.
Roulette Game
CD,DVDをプレスするなら高品質で激安のCD プレス、YASUI PRESSで!
フライヤー、ポスター、冊子、ステッカー…印刷なら「安い」「早い」印刷 激安のYOTSUBA印刷で!
HipHop,R&B,Reggae,HouseのMIX CDならMIX CD 通販Monster Musicのページで!
大阪でロープライス、ハイクオリティーなデリヘルをお探しなら大阪 デリヘルで!
大阪でお仕事をお探しの方は大阪 高収入求人で!
フラミンゴヒップはブランドコスメ、海外コスメ、韓国コスメ、香水、アパレル、雑貨などを豊富な品揃えで、激安通販しております。
CMのBGM、WEB用のオリジナル楽曲の制作なら音楽制作で!
新着ん。は大阪 デリヘル、大阪 ホテヘルなどのリアルタイム情報を掲載しています。
大阪 デリヘルをご利用したいとお考えの方、大阪 デリヘルに興味をお持ちの方は是非こちらの大阪 デリヘルサイトをご覧下さい。
大阪 デリヘル、大阪 風俗。キャバクラ、ホスト等の高収入求人情報に興味のある方は大阪 高収入求人ワーカープラスへ!
中古コピー機専門店アットコピーは、中古コピー機を「あっと」驚く価格。「あっと」いう間に全国配送致します!中古コピー機ならアットコピーへ!
神戸で風俗、ヘルスをお探しならこちらで!!
神戸でアルバイトをお探しなら神戸 高収入アルバイトで!神戸 高収入アルバイトならきっとお望みのアルバイトが見つかります!
日本語ラップ好きによるBLOG。メディアで知ることの出来ないアーティストも多数紹介しています!
大手流通では置いていない日本語ラップ 通販はこちら。
漫画好きによる漫画 おすすめ マンガのBLOGです。歴史的名作からB級作品まで、様々な漫画を紹介します!
誰が何と言おうとプロレスは最高です!プロレスLOVEな男によるBLOGです。
崇高なる音楽ヘビーメタルを愛する人間によるBLOGです。
日本人の精神を見失った人達へのメッセージ。愛国心を取り戻しましょう!
名作「北斗の拳」から人生を学びましょう。
CDやDVDを作りたい方、CD プレスBLOGを参考にして下さい。
世界に誇る素晴らしいJ-POPを紹介します。
夜のお仕事,、キャバクラ 求人,大阪・神戸・京都・滋賀・奈良・和歌山の高収入バイト情報のエムナビ。キャバクラ アルバイトをお探しの方に最適!
毎日使える無料デコメ画像素材サイト!会員登録無しで取り放題。
Money can`t buy Happiness?Whoever said that doesn`t know where to buy.
Buyhermesbirkin offers the high quality Hermes bags and services.
No matter it is the classic Birkin bag, or the Kelly and Lindy bag,
or the latest new designs, you can find them here. Just selecting one,
you will be the next Victoria in the street.Comes from Shuna Sun.
http://www.buyhermesbirkin.com/
压力变送器
fashion accessories
ethnic jewelry
jade jewelry
干洗机是干洗衣物的专业设备, 其生产商家是上海莱洁干洗公司,有需求请点击进站
干洗店加盟是为干洗爱好者提供从业平台.希望有至力于此行业的玩家找我们.
压力变送器是工业实践中最为常用的一种传感器,广泛应用于各种工业自控环境石化、电力、船舶、机床、管道等众多行业.
风速仪的优点是体积小,适用范围广。不仅可用于气体也可用于液体,在气体的亚声速、跨声速和超声速流动中均可使用,其主要用途是测量平均流动的速度和方向。测量来流的脉动速度及其频谱.
货架是指专门用于存放成件物品的保管设备。在物流及仓库中货架是占有非常重要的地位.
自动记录仪是将温湿度参数进行测量并按照预定的时间间隔将其储存在内部存储器中,在完成记录功能后将其联接到PC机,利用适配软件将存储的数据提出并按其数值、时间进行分析的仪器。利用该仪器可确定储运过程、实验过程等相关过程没有任何危及产品安全的事件发生。
北大纵横是亚太最有影响力的企业管理咨询公司,我们将为企业提供战略管理,企业信息化,人力资源,市场营销,企业品牌等咨询服务,欢迎你的访问.
流量计
压差开关
变送器
专业的网站优化公司
最值得信赖的GOOGLE优化服务
离婚律师
风速仪
自动记录仪
自动气象站
干洗店加盟
干洗机
北京货架
阁楼楼梯
记录仪
差压开关
风速传感器
真空计
质量流量计
北京律师
模具加工
差压变送器
仓储货架
北京模具
北京工业设计
货架公司
车库门
车库门
刑事辩护律师
工程楼梯
楼梯扶手
楼梯
车库门
车库门
车库门
车库门
北京模型
手板制作
手板加工
北京手板
货架
货架厂
北京钢结构
钢结构公司
干洗设备
工作服
北京工作服
北京网站优化
网站优化服务
北京网站优化服务
北京GOOGLE优化
北京GOOGLE优化公司
北京网站优化公司
网站优化公司
GOOGLE优化公司
北京网站排名
北京GOOGLE排名
北京网站优化排名
北京GOOGLE优化排名
排名优化
GOOGLE排名
网站排名
GOOGLE左侧排名服务
GOOGLE左侧排名
GOOGLE优化服务
GOOGLE左侧优化
GOOGLE左侧优化服务
网站优化服务
Google排名服务
网站优化排名
GOOGLE优化排名
北京网站建设
北京网站建设公司
网站建设公司
网站建设
北京网页设计
北京网页设计公司
网页设计公司
网页设计
北京网页制作
网页制作
复式楼梯
别墅楼梯
旋转楼梯
温湿度记录仪
温度记录仪
温湿度计
二氧化碳变送器
便携式气象站
无线自动气象站
电子温湿度计
真空压力计
差压表
气体质量流量计
微压压力变送器
北方大河
二氧化碳记录仪
北京车库门
北京车库门
北京车库门
防火卷帘门
防火卷帘门
防火卷帘门
防火卷帘门
反渗透设备
超纯水设备
软化水设备
去离子水设备
北京离婚律师
北京律师
北京婚姻律师
离婚律师
婚姻律师
北京手板厂
贵州茅台酒
茅台酒
国酒茅台
茅酒
茅台
车库门
When someone disagrees with posts like this, its evident that they haven’t an ability to assess good quality articles; thanks. Bistro MD Reviews
興信所の手引き
ニキビケアを始めよう
ブライダルエステで美人花嫁になろう
健康食品の必要性
脱毛の基礎知識
引越し見積もりでお得に引越し
司法書士による債務整理のススメ
育毛をはじめる前の基礎知識
弁護士による債務整理の基本
妊娠中のむくみ解消
マリッジリングガイド
ダイエット運動をはじめよう
個人民事再生法知っ得ガイド
失敗しないダイエット方法
引越し手続き便利帳
スキンケア洗顔石鹸
せどりネットで稼ぐ古本販売
ペット火葬ガイド
内臓脂肪の危険
豊胸のための手術法
ぱちんこアバンギャルド 動画
デリヘル 無修正 動画
西村あみ 無修正 動画
看護婦 無修正 動画
細川しのぶ 無修正 動画
CRヤッターマン 動画
マーチステークス 競馬 動画
若葉かおり 無修正 動画
AKB48 動画
コスプレ 無修正 動画
【ED 勃起不全 バイアグラ】勃起力復活トレーニング-薬を使わず安全にEDを克服した1日20分の簡単トレーニング
インタビュー 無修正 動画
マイラーズカップ 競馬 動画
アニメ 無修正 動画
露出 無修正 動画
ごっくん 無修正 動画
椿まや 無修正 動画
[ナンパ セックス]即ハメナンパ究極マニュアル(実録音声付)
NEWS SUMMER TIME 動画
アルゼンチン共和国杯 競馬 動画
レイプ 無修正 動画
阪神大賞典 競馬 動画
宝塚記念 競馬 動画
北島三郎 動画
朝比奈りり子 無修正 動画
会社 無修正 動画
宇多田ヒカル 動画
Hey! Say! JUMP Ultra Music Power 動画
吉崎紗南 無修正 動画
潮吹き 無修正 動画
[セックス モテる 出会い]3つの質問だけで、可愛い女をセックスモードに強制誘導する悪魔のTHREE QUESTIONS!
松岡理穂 無修正 動画
未亡人 無修正 動画
相沢優 無修正 動画
CR新世紀エヴァンゲリオン セカンドインパクト 動画
ザ・クロマニヨンズ 動画
スペシャルハナハナ 動画
SM 無修正 動画
瀬尾えみり 無修正 動画
サクラチトセオー 動画
KinKi Kids 全部だきしめて 動画
横山あさ美 無修正 動画
伊藤由奈 動画
ビキニ 無修正 動画
野外 無修正 動画
関ジャニ∞ ワッハッハー 動画
奉仕 無修正 動画
雛乃つばめ 無修正 動画
タマモクロス 動画
教室 無修正 動画
アルツハイマー 原因
ワンピース 壁紙
FBCS0624
health questions healthy cooking medical questions answered medical blog health problmes qa
http://www.replica-china.net
In an eerie display of asics ultimate 81 collective intuition, the individual choices onitsuka tiger ultimate 81of millions of voters contrived to asics onitsuka tiger ultimate 81 align perfectly the asics tiger ultimate 81 parliamentary arithmetic with the angry ultimate 81 onitsuka tiger ambivalence of the national mood. Mr. Cameron had ultimate 81 asics done enough to secure the keys of 10 onitsuka tiger california 78 Downing Street, the voters judged, but not asics onitsuka tiger california 78 enough to be granted a free hand.
As theonitsuka tiger california prospect of days if not weeks, asics california 78 of uncertainty, of the lack of a government, dawned on investors asics tiger california 78 they responded in the only way they knew and dumped anything with a UK hallmark
In an eerie display of asics ultimate 81 collective intuition, the individual choices onitsuka tiger ultimate 81of millions of voters contrived to asics onitsuka tiger ultimate 81 align perfectly the asics tiger ultimate 81 parliamentary arithmetic with the angry ultimate 81 onitsuka tiger ambivalence of the national mood. Mr. Cameron had ultimate 81 asics done enough to secure the keys of 10 onitsuka tiger california 78 Downing Street, the voters judged, but not asics onitsuka tiger california 78 enough to be granted a free hand.
As theonitsuka tiger california prospect of days if not weeks, asics california 78 of uncertainty, of the lack of a government, dawned on investors asics tiger california 78 they responded in the only way they knew and dumped anything with a UK hallmark
In an eerie display of asics ultimate 81 collective intuition, the individual choices onitsuka tiger ultimate 81of millions of voters contrived to asics onitsuka tiger ultimate 81 align perfectly the asics tiger ultimate 81 parliamentary arithmetic with the angry ultimate 81 onitsuka tiger ambivalence of the national mood. Mr. Cameron had ultimate 81 asics done enough to secure the keys of 10 onitsuka tiger california 78 Downing Street, the voters judged, but not asics onitsuka tiger california 78 enough to be granted a free hand.
As theonitsuka tiger california prospect of days if not weeks, asics california 78 of uncertainty, of the lack of a government, dawned on investors asics tiger california 78 they responded in the only way they knew and dumped anything with a UK hallmark
In an eerie display of asics ultimate 81 collective intuition, the individual choices onitsuka tiger ultimate 81of millions of voters contrived to asics onitsuka tiger ultimate 81 align perfectly the asics tiger ultimate 81 parliamentary arithmetic with the angry ultimate 81 onitsuka tiger ambivalence of the national mood. Mr. Cameron had ultimate 81 asics done enough to secure the keys of 10 onitsuka tiger california 78 Downing Street, the voters judged, but not asics onitsuka tiger california 78 enough to be granted a free hand.
As theonitsuka tiger california prospect of days if not weeks, asics california 78 of uncertainty, of the lack of a government, dawned on investors asics tiger california 78 they responded in the only way they knew and dumped anything with a UK hallmark
Thank you so much for the post Logo Designs. It will be also encouraging to the author if we all could share it (for some of us who use bookmarking Website Design services such as a digg, twitter,..).
I now even have other pair of five fingers shoes and I don’t think I’ll ever sneakers or rubber shoes compared to this.vibram five fingers ksoworn with shorts come off more like socks.Still that Classics are the most minimal fivefingers sprint that can still function in outdoor use.
When you’re scrambling up a rocky bluff or bounding along a riverbank, the last thing you want is gravel and grit seeping into your Vibram FiveFingers The KSO Trek is a more rugged version of the popular five fingers kso. The Kangaroo leather upper and sock liner are soft against the foot yet strong and tear resistant. A single hook-and-loop closure helps secure the fit.Vibram Fivefingers series-Vibram fivefingers sprint has all of the benefits of the Classic, with a little added security.
علم ومعرفة | Knowledge | دراسات علمية | ابحاث | Scientific Studies | TOEFL | كتب | Books | Medical English Forum | MEDICAL CLINICAL |
Medical Software, Medical Books, Medical Videos | زوايا عامه | حوار ونقاش | ذاكرة الاماكن | بداية المشوار | كوفي الأعضاء | حروف ترسمهأ قصائدكمّ | حكايا وعبر | مناجاة قلمك للورق |
غنج التوت | اطايب شهية | ديكور, اثاث, غرف نوم, مفروشات, حدائق | صحة, طب بديل, تغذية, اعشاب, رجيم, رشاقة | برامج كمبيوتر | برامج ماسنجر | ماسنجر 2010 |
برامج جوال | فوتوشوب, تصاميم, جرافيكس | اقلبها فله | العاب | العاب الكترونية | صور فساتين | صور | a7lm | منتديات ارسمك حلم |
ارسمك حلم | نشر مدونات | حلم | ارسمك|
الحوامل | الولادة الطبيعية | الولادة القيصرية | الحمل والولادة | دردشة حوامل | اطفال الانابيب | اعراض الحمل | علامات الولادة | علامات الحمل | الاجهاض | ملابس اطفال | مراحل الجنين |
الوحم | حساب موعد الولادة | حساب الحمل | طرق الحمل | علامات الحمل بولد | علامات الحمل بتوأم | بعد الاجهاض | اسباب الاجهاض | الحمل بعد الاجهاض |
اعراض الاجهاض | حكم الاجهاض | حبوب الاجهاض | الاجهاض المنزلي | الاجهاض بالاعشاب | تنظيف الرحم | الدورة بعد الاجهاض | الرحم بعد الاجهاض | نمو الجنين | مراحل نمو الجنين | مراحل الحمل بالصور |
ولادة طبيعية يوتيوب | الاجهاض المتكرر | الوحم اثناء الحمل | علاج الوحم | اعراض الوحم | متى يبدا الوحم |
تحديد موعد الولادة | طرق منع الحمل | طريقة الحمل | حبوب ياسمين | حبوب جينيرا | حبوب مارفيلون | ايام التبويض | فترة التبويض | ايام الحمل | التبويض عند المرأة | التبويض بالصور |
علاج تكيس المبايض | تكيس المبايض وعلاجه | منع الحمل | ولادة طبيعية | ولادة فيديو | ولادة قيصرية فيديو | اسماء بنات مواليد | اسماء بنات | اسماء مواليد جديدة |
حبوب منع الحمل | التبويض | تكيس المبايض | المبايض | فساتين حوامل | فترة النفاس | مراحل الحمل | حبوب الحمل | اللولب | الولادة المبكرة |
صور ولادة | فيديو ولادة | اسماء مواليد | ازياء اطفال | صور حوامل | علاج العقم | ازياء حوامل | نمو الجنين |
جنس الجنين | حركة الجنين | هدايا مواليد | الولادة | تأخر الحمل |
فله | منتديات عشقي |شات صوتي |منتديات | منتديات بلاك بيري | دمعة |
hym.. napa jadi mcm tu post aku..
Terima kasih banyak2 diucapkan kepada pihak penganjur,penaja,para perserta,pengundi,team developer serendipity,my lovely niki dan juga kepada yang terlibat secara langsung atau tidak langsung..
Semoga kita mendapat manfaat dari program ini dan juga agar kita dapat memperbaiki kelemahan masing2..
Terima kasih
Post new comment