[WEBDEV Room!] แชร์ทุกเรื่อง ถ้าเป็นเว็บ!

เริ่มโดย EThaiZone, 05 สิงหาคม 2008, 22:39:50

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

pHasIs


EixQzUnG

 :P :P :P :P ไปศึกษาก่องได้เรื่องไงเดียว ค่อยมาโฟ้  ;D ;D ;D

pugkung

อ้างถึงจาก: pHasIs ใน 10 สิงหาคม 2008, 02:40:19
อยากจับน้องโจ้มาต้มกิน  ;D ;D

ไม่ใช่ ลองของ นะท่าน จะได้กินคนอื่นแล้วได้ความสามารถมา    :D

ฉันไม่มีตัวตน

เก่ง+ไอเดีย = รวย
หมวดเดิมผมยังก๊อบโคดไม่หมดเลย...

hunsa

อยากทำ http://www.pantip.com/tech/market/price/index.php?

การค้นหาข้อมูลมาแสดงเพื่อนการตัดสินใจ ต้องทำอย่างไรค่ะ  ตอนนี้กำลังเริ่มต้นศึกษา php ค่ะ

ขอแค่ ตรวจสอบราคา NOTEBOOK   ขอบคุณมากค่ะ  :)

คนจน

php5 อัพโหลดรูปแก้ไขยังไงครับ

Code เดิม
if ( $MPic == ""){
echo "";
}else{
$size = getimagesize($MPic);
if($size[0] > $config[imgWidth]) {
echo "<br><br><center><font size=3><b>ความกว้างของรูปมากกว่า $config[imgWidth] pixels กรุณาตรวจสอบและแก้ไข<br><br><a href='javascript:history.back(1)'>[ กลับไปแก้ไข ]</a></b></font></center>";
exit();
}
}


Code นี้อัพโหลดรูปไม่ติดครับแก้ไขยังไง ผมใช้ php5 ครับ
ขอบคุณมากครับ
:-* :-*

EThaiZone

อ้างถึงจาก: pHasIs ใน 10 สิงหาคม 2008, 02:40:19
อยากจับน้องโจ้มาต้มกิน  ;D ;D
ง่ะ พี่ชอบกินผู้ชายเหรอ  :o

อ้างถึงจาก: คนจน ใน 11 สิงหาคม 2008, 01:03:19
php5 อัพโหลดรูปแก้ไขยังไงครับ

Code เดิม
if ( $MPic == ""){
echo "";
}else{
$size = getimagesize($MPic);
if($size[0] > $config[imgWidth]) {
echo "<br><br><center><font size=3><b>ความกว้างของรูปมากกว่า $config[imgWidth] pixels กรุณาตรวจสอบและแก้ไข<br><br><a href='javascript:history.back(1)'>[ กลับไปแก้ไข ]</a></b></font></center>";
exit();
}
}


Code นี้อัพโหลดรูปไม่ติดครับแก้ไขยังไง ผมใช้ php5 ครับ
ขอบคุณมากครับ
:-* :-*


เอาโค้ดมาไม่หมด ผมตอบไม่ได้ครับ
แต่ให้เดาเอา ปัญหาเรื่องไม่รับ PHP5 ส่วนมากจะเจอกันเยอะคือเรื่อง register globall off

นั้นก็คือปัญหาการรับค่า GET (ค่าที่ต่อท้าย ? ใน url) กับค่า POST (ค่าที่มาจากการซัพมิทแบบฟอร์ม)
จากเดิมเราสามารถอ้างอิงเรียกได้โดยตรง แต่ใน PHP5 ได้โดนตั้งไว้ให้เรียกตามนี้

แบบ GET ใช้ $_GET['ตัวแปร']
แบบ POST ใช้ $_POST['ตัวแปร']

ถ้าให้ผมเดาจากโค้ดด้านบน คงต้องเป็นแบบ POST แน่ๆ (ไม่เคยเห็นใครทำส่งไฟล์ด้วย GET เลย  :D)
ก็น่าจะเป็นประมาณนี้
if ( $_POST['MPic'] == ""){
echo "";
}else{
$size = getimagesize($_POST['MPic']);
if($size[0] > $config[imgWidth]) {
echo "<br><br><center><font size=3><b>ความกว้างของรูปมากกว่า $config[imgWidth] pixels กรุณาตรวจสอบและแก้ไข<br><br><a href='javascript:history.back(1)'>[ กลับไปแก้ไข ]</a></b></font></center>";
exit();
}
}


:P

อ้างถึงจาก: hunsa ใน 11 สิงหาคม 2008, 00:36:30
อยากทำ http://www.pantip.com/tech/market/price/index.php?

การค้นหาข้อมูลมาแสดงเพื่อนการตัดสินใจ ต้องทำอย่างไรค่ะ  ตอนนี้กำลังเริ่มต้นศึกษา php ค่ะ

ขอแค่ ตรวจสอบราคา NOTEBOOK   ขอบคุณมากค่ะ  :)
ของเว็บพันทิพเอง ก็มีแค่เรียกข้อมูลใน DB มาแสดง
ซึ่งตัว DB นั้น ก็มีคนคีย์เอง เป็นระบบธรรมดาๆ เพียงแต่ต้องหาคนมาเป็นคนอัพเดตราคาครับ

เหมือนทั่วไป คือข้างนอกก็ query มาแสดงเป็น table
แต่ด้านหลัง ก็ต้องทำแบบฟอร์มเพื่อ input ข้อมูลเข้าไป
และทำส่วนลบข้อมูลของเก่าทิ้ง

และจะมีอีกวิธีคือ web scraping  ไว้เดียวจะมาเขียนให้ดูเป็นกรณีศึกษาครับ

:) (แต่ขอติดเป็นวันหลังนะ งานตรึม)

kudjung

สอบถามเรื่อง Script PHP ย่อรูป  GIF ที่เป็นภาพเคลื่อนไหว ผมย่อที่ไร กลายเป็นภาพนิ่งทุกที่  :P
แต่เห็นเว็บของเมืองนอก ที่รับฝากไฟล์ มันย่ิอแล้วภาพยังเคลื่อนไหวเหมือนเ้ดิมครับ
ไม่รู้ว่าทำอย่างไรครับ

EThaiZone

อ้างถึงจาก: kudjung ใน 11 สิงหาคม 2008, 10:50:02
สอบถามเรื่อง Script PHP ย่อรูป  GIF ที่เป็นภาพเคลื่อนไหว ผมย่อที่ไร กลายเป็นภาพนิ่งทุกที่  :P
แต่เห็นเว็บของเมืองนอก ที่รับฝากไฟล์ มันย่ิอแล้วภาพยังเคลื่อนไหวเหมือนเ้ดิมครับ
ไม่รู้ว่าทำอย่างไรครับ

ผมยังไม่เคยเจอ class ที่ว่าแบบนั้น (ยังไม่มีโอกาสใช้)

แต่ถ้าเป็นผม คงจะใ้ช้ IMagick (ชื่อเต็ม ImageMagick)
เป็น extension ตัวหนึ่ง ที่ใช้จัดการรูปได้ดีกว่า GD
แค่ resize รูป ยังดูสวยกว่าเลย

ลองอ่านเรื่อง imagick จากเว็บนี้นะครับ (มีโหลดตัวสำหรับ windows ด้วย)
http://valokuva.org/

:D

thenetxx

 :o

กะแล้วต้องโดนว่าเรื่องไม่ยอมใช้ empty

แต่โดยส่วนตัว  !$ มันพิมง่ายกว่า  เพราะขี้เกียจ วะฮ่า ๆๆ  ;D
Develop site but can't develop life
ASIA

kudjung

อ้างถึงจาก: EThaiZone ใน 11 สิงหาคม 2008, 10:56:39
อ้างถึงจาก: kudjung ใน 11 สิงหาคม 2008, 10:50:02
สอบถามเรื่อง Script PHP ย่อรูป  GIF ที่เป็นภาพเคลื่อนไหว ผมย่อที่ไร กลายเป็นภาพนิ่งทุกที่  :P
แต่เห็นเว็บของเมืองนอก ที่รับฝากไฟล์ มันย่ิอแล้วภาพยังเคลื่อนไหวเหมือนเ้ดิมครับ
ไม่รู้ว่าทำอย่างไรครับ

ผมยังไม่เคยเจอ class ที่ว่าแบบนั้น (ยังไม่มีโอกาสใช้)

แต่ถ้าเป็นผม คงจะใ้ช้ IMagick (ชื่อเต็ม ImageMagick)
เป็น extension ตัวหนึ่ง ที่ใช้จัดการรูปได้ดีกว่า GD
แค่ resize รูป ยังดูสวยกว่าเลย

ลองอ่านเรื่อง imagick จากเว็บนี้นะครับ (มีโหลดตัวสำหรับ windows ด้วย)
http://valokuva.org/

:D

ขอบคุณครับ  :) เดี๋ยวไปลองดูก่อน

icez

อ้างถึงจาก: thenetxx ใน 11 สิงหาคม 2008, 12:50:13
:o

กะแล้วต้องโดนว่าเรื่องไม่ยอมใช้ empty

แต่โดยส่วนตัว  !$ มันพิมง่ายกว่า  เพราะขี้เกียจ วะฮ่า ๆๆ  ;D
ไว้ว่างๆ ลองเปิดดู php error สิครับ
ไม่ใช้คำสั่งพวก empty , isset นี่ขึ้น error มายุบยับเลยแหละ
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

คนจน

สวัสดีครับเอา code มาให้ใหม่ครับ


// ตรวจสอบความกว้างของรูป
if ( $MPic == ""){
echo "";
}else{
$size = getimagesize($MPic);
if($size[0] > $config[imgWidth]) {
echo "<br><br><center><font size=3><b>ความกว้างของรูปมากกว่า $config

[imgWidth] pixels กรุณาตรวจสอบและแก้ไข<br><br><a href='javascript:history.back(1)'>[ กลับไปแก้ไข ]</a></b></font></center>";
exit();
}
}

// ตรวจสอบขนาดของรูป
if($MPic_size>$Image_size) {
echo "<br><b><center><font size=3 color=red >ขนาดของภาพเกิน $Image_size bytes

[$Image_msg]</font></center></b><br>";
echo "<br><b><center><font size=3 color=red >[&nbsp;<a href='javascript:history.back

(1)'>กลับไปแก้ไข</a>&nbsp;]</font></center></b>";
exit();
}

// ตั้งชื่อรูปภาพ
$ppdate = date(Ymd);
$pmdate = date(His);
$QPic_name = "$ppdate"."_"."$pmdate";

// แปลงนามสกุล และทำการ upload
if ( $MPic_type == "image/gif" )
{
$filename = $QPic_name.".gif";
}
if ( $MPic_type == "image/bmp" )
{
$filename = $QPic_name.".bmp";
}
elseif (($MPic_type=="image/jpg")||($MPic_type=="image/jpeg")||($MPic_type=="image/pjpeg"))
{
$filename = $QPic_name.".jpg";
}
copy ($MPic , "$path/" . $filename );


upload รูปใน php5 ไม่ขึ้นครับ แก้ไขยังไง
ขอบคุณครับ
:-* :-*

rapeedu

ขอถามครับ พอจะมีความรู้ด้าน mySQL บ้างไหมครับ เช่น
1. การ optimize ให้ทำงานได้รวดเร็ว เช่น index
2. การ optimize ในส่วนของ Query หรืออื่นๆ
3. การใช้งานอื่นๆ ที่ควรทำหรือไม่ควรทำใน mysql

ถามมาากไปหน่อย แต่หลาย ๆคนคงอยากรู้ครับ จะได้นำไปพัฒนาเว็บ
[direct=http://emonitorplus.com]บริการรับส่ง Email Marketing[/direct] [direct=http://emonitorplus.com]บริการรับส่งข่าวสารด้วย E-mail[/direct][direct=http://emonitorplus.com/%E0%B8%9C%E0%B8%A5%E0%B8%87%E0%B8%B2%E0%B8%99-email-marketing-%E0%B8%A5%E0%B8%B9%E0%B8%81%E0%B8%84%E0%B9%89%E0%B8%B2/]ผลการส่ง Email marketing[/direct]
[direct=https://www.facebook.com/emonitorplus]บริการรับส่ง email marketing[/direct]
[direct=http://emonitorplus.com/]รับส่ง email marketing[/direct]

icez

_http://www.icez.net/blog/tags/mysql
เขียนทิ้งไว้จนลืมไปแล้วครับว่าจะต่อยังไง - -'
เรื่องมันยาวน่ะครับ
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

rapeedu

อ้างถึงจาก: icez ใน 11 สิงหาคม 2008, 19:57:46
_http://www.icez.net/blog/tags/mysql
เขียนทิ้งไว้จนลืมไปแล้วครับว่าจะต่อยังไง - -'
เรื่องมันยาวน่ะครับ
ตามไปอ่านแล้ว ยังรอการเขียนต่อครับ ว่า ใช้งานยังไง  :)
[direct=http://emonitorplus.com]บริการรับส่ง Email Marketing[/direct] [direct=http://emonitorplus.com]บริการรับส่งข่าวสารด้วย E-mail[/direct][direct=http://emonitorplus.com/%E0%B8%9C%E0%B8%A5%E0%B8%87%E0%B8%B2%E0%B8%99-email-marketing-%E0%B8%A5%E0%B8%B9%E0%B8%81%E0%B8%84%E0%B9%89%E0%B8%B2/]ผลการส่ง Email marketing[/direct]
[direct=https://www.facebook.com/emonitorplus]บริการรับส่ง email marketing[/direct]
[direct=http://emonitorplus.com/]รับส่ง email marketing[/direct]

oldgame

ยังตามติดเป็นระยะ ๆ ครับ

พี่ icez ได้ปล่อย script เว็บ upload รูปตัวใหม่รึเปล่าครับ ผมใช้ตัวเก่าของพี่อยู่ครับ

ใช้ดีมากเลย เห็นตัวใหม่พี่ upทีได้หลายรูปเลย  :-*
[direct=http://www.pwgamer.com]โปรเกมส์[/direct] luna-z blog ส่วนตัวรวมโปร
[direct=http://www.kaichonasean.com]ไก่ชน[/direct] เว็บไซต์รวมซุ้มไก่ชน
[direct=http://www.boybdream.com]รับออกแบบเว็บไซต์[/direct]  รับออกแบบเว็บไซต์
[direct=http://www.2winweb.com]รับทำเว็บ[/direct]  รับออกแบบเว็บไซต์
[direct=http://www.pralanna.com]พระเครื่อง[/direct] พระล้านนา รวมพระเครื่องเมืองเหนือ

EThaiZone

#97
กรณีศึกษา Web scraping กับเว็บพันทิพย์

นี้เป็นตัวอย่างโค้ดง่ายๆ นะครับ ที่ใช้การเขียน regex (Regular expression)
มาให้แบ่งส่วนข้อความ

ผมคงไม่ร่ายอะไรมาก เอาโค้ดไปลองรันดู ตรงไหนไม่เข้าใจ
ให้เอาชื่อฟังค์ชั่น ไปต่อท้าย php.net/ เช่น php.net/file_get_contents
ไปเปิดใน browser ก็จะขึ้นข้อมูลของฟังค์ชั่นนั้นๆ มาให้ดูครับ

<?php

//Example code by EThaiZone

$page file_get_contents("http://www.pantip.com/tech/market/price/index.php?NBK=on");

preg_match_all("#<tr[^>]+><td>(.*)</td><td>(.*)</td><td>(.*)</td></tr>#"$page$matches);

echo 
"<h2>Notebook Price @ Pantip</h2><table><tr style='font-weight: bold; color: #000066;'><td>Brand</td><td>Detail</td><td>Price</td></tr>";
foreach(
$matches[0] as $key => $value) {
echo "<tr ".($key%"style='background-color: #eee;'" "style='background-color: #bbb;'").">";
echo "<td>".$matches[1][$key]."</td>";
echo "<td>".$matches[2][$key]."</td>";
echo "<td>".$matches[3][$key]."</td>";
echo "</tr>";
}
echo 
"</table>";

?>


ข้อมูลของ Regex เบื้องต้น

อ้างถึงRegular expressions

Some hints about the syntax of regular expressions:

Text:
  . Any single character
  [chars] One  of chars
  [^chars] None of chars
  text1|text2 text1 or text2

Quantifiers:
  ? 0 or 1 of the preceding text
  * 0 or N of the preceding text (N > 0)
  + 1 or N of the preceding text (N > 1)

Grouping:
  (text) Grouping of text

Anchors:
  ^ Start of line anchor
  $ End of line anchor

Escaping:
  \ char escape that particular char




Pattern Matching metacharacter Definitions
\     Use before any of the following characters to escape or null the meaning or it. \* \. \$ \+ \[ \]
^    Start matching at this point
$    End point of the match
.    Any character
[]    Starts a range
|    Starts alternative match this|that would mean match this or that
()    starts a back reference point
?    match 0 or 1 time Quantifier
+    match atleast 1 or more times Quantifier
*    match 0 to infinite times Quantifier
{}    match minimum to maximum Quantifier {0,3} match up to 3 times


Range Definitions []
^     Negates the class. [^A-Z]+ means don't match any uppercases
\    Use before any of the following characters to escape or null the meaning or it. [\+]+
-    Range for matching [0-9]+ [a-zA-Z]+
อ้างอิงจาก http://www.thaiseoboard.com/index.php/topic,3675.0.html

อ่านเพิ่ม
http://th2.php.net/manual/en/regexp.reference.php

ผมเขียน regex จนโปรไปแล้ว  :-X




โค้ดของคุณคนจน ยังเอามาไม่หมดครับ
ยังไม่รู้ที่มาของ $MPic_size  $MPic_type เลย



อ้างถึงจาก: rapeedu ใน 11 สิงหาคม 2008, 19:44:55
ขอถามครับ พอจะมีความรู้ด้าน mySQL บ้างไหมครับ เช่น
1. การ optimize ให้ทำงานได้รวดเร็ว เช่น index
2. การ optimize ในส่วนของ Query หรืออื่นๆ
3. การใช้งานอื่นๆ ที่ควรทำหรือไม่ควรทำใน mysql

ถามมาากไปหน่อย แต่หลาย ๆคนคงอยากรู้ครับ จะได้นำไปพัฒนาเว็บ

เป็นคำถามที่ผมคิดว่าคงตอบไม่หมดครับ มันเยอะมากๆ
ผมคงตอบได้แค่ว่า (ตอบรวบๆ นะครับ)
1. อย่าลืมสิ่งที่ควรทำ พวกตั้ง primary key หรือการทำดัชนี (ก็ index นั้นแหละ)
หรือแม้แต่การเลือกชนิดของฟิลด์ให้เหมาะสมกับข้อมูล พวกนี้ก็สำคัญมาก
(อยากให้คุณ icez มาเขียนเรื่องนี้จริงๆ เขาเทพเรื่อง Mysql มากๆ)
2. ใช้ DB ให้เหมาะกับงาน เช่นเว็บฝากรูปที่มีการใช้ Mysql
ถ้าเราแค่ใช้ทำปกติ เช่นเก็บข้อมูลรูป อีเมล์ รหัสลบรูป อะไรพวกนี้
ก็สามารถซอย DB ให้เล็กลงเป็นหลายๆ table ได้
ข้อนี้อาจฟังดูยากๆ แต่พวกนี้ถ้าดูระบบออก สักวันเราจะสร้างระบบเป็น
(อย่ามองระบบเป็นโปรแกรมอย่างเดียว แต่ระบบคือกลุ่มการทำงานที่ทำไปพร้อมๆ กัน)
3. อะไรที่ใช้บ่อย ก็แคชไปเถอะ เช่นระบบ Tags ในบางเว็บ
เราอาจตั้งเวลาแคชนานๆ แม้ต้องแลกกับความสดของข้อมูลหน่อย
แต่สมมุติว่ามี PV ในหน้านั้นๆ สักหลักพัน ถ้าทำแคชไว้สัก 1 วัน
ก็ลดเวลาการ process โดยรวมได้เยอะแล้ว

มีหลายเว็บดังๆ ก็ใช้เทคนิคอื่นเข้าช่วย เช่นจากปากคำพี่ตี๋
เว็บส. ก็ใช้ memcache มาเก็บข้อมูลที่ใช้บ่อยๆ
แถมยังมีการสร้างระบบอื่นๆ เพิ่มมาใช้ เพื่อลดขนาดข้อมูลที่ต้ิองเก็บ
ซึ่งเป็นอัลกอริทึ่มเขียนเอง จากที่เคยคุยกันวันนั้น ถึงวันนี้ผมก็ยังไม่เก็ทสักที

เรื่องพวกนี้ผมและท่านๆ ก็จะไม่เก็ท จนกว่าจะได้ลองใช้จริงๆ :-X

ปล. ผมจะไม่ตอบกระทู้นี้หลายวันหน่อยนะ เพราะงานค้างจัด รายงานด้วยอีก (ย้ำอีกที ผมยังเรียนป.ตรี อยู่ ^^")

icez

หลักๆ ก็...

1. primary key ต้องเป็นตัวเลขเท่านั้นครับ ไม่ว่าจะเก็บอะไรก็ตาม ไม่งั้นจะช้ามากถึงมากที่สุด
2. ต้องใช้ where id = 123 สำหรับ field ประเภทตัวเลขทั้งหมดเท่านั้น ห้ามใช้ where id = '123' ในการค้นหาตัวเลขโดยเด็ดขาด (เจอมากับตัว)
3. การ search จาก primary key เป็นอะไรที่เร็วสุดๆ และไม่กินระบบเลยด้วย เพราะฉะนั้น จงอ้างอิงจาก primary key ให้ได้มากที่สุด
4. กรณีที่ไม่อยากเอา primary key มาเสี่ยง (เพราะโดยมาก จะเป็น auto increment number ทำให้เดาเล่นกันได้) ให้ไปทำ index ใน field ที่เป็น key อื่นแทน แต่ยังไงก็ขอให้เป็นตัวเลข เพราะเร็วกว่ากันเยอะมากๆ (อาจจะทำ crc32 ก็ได้ แต่เลี่ยง md5 ได้เป็นดี)
5. query เอาเฉพาะัที่ใช้ เร็วกว่า select * นะครับ
[direct=http://www.thzhost.com/]THZHost[/direct] SSD Hosting ไทย/สิงคโปร์ พร้อม firewall ป้องกันการยิงเว็บ + scan ไวรัสในเว็บ

ball6847

อ้างถึงจาก: icez ใน 11 สิงหาคม 2008, 13:55:24
อ้างถึงจาก: thenetxx ใน 11 สิงหาคม 2008, 12:50:13
:o

กะแล้วต้องโดนว่าเรื่องไม่ยอมใช้ empty

แต่โดยส่วนตัว  !$ มันพิมง่ายกว่า  เพราะขี้เกียจ วะฮ่า ๆๆ  ;D
ไว้ว่างๆ ลองเปิดดู php error สิครับ
ไม่ใช้คำสั่งพวก empty , isset นี่ขึ้น error มายุบยับเลยแหละ

เอ... ปกติคุณ icez ใช้ error_reporting ระดับไหนหรอคับ แสดงว่าเขียนแบบกะไม่ให้มี error แม้แต่ระดับ notice เลยหรอคับ มีผลกับการทำงานของโปรแกรมั้ยคับ หรือว่าต้องทำให้ติดเป็นนิสัยหรอคับ จะได้เปลี่ยนมั่ง ปกติผมใช้แค่ธรรมดาเอง
We use Ubuntu.

[direct=http://ng-seo.sourcelab.xyz/]AngularJS SEO Experimental[/direct]