web programming

windows mysql reset root

Posted on Updated on


1. stop mysql service.
2. edit a file abcd.sql
UPDATE mysql.user SET Password=PASSWORD(‘MyNewPass’) WHERE User=’root’;
3. mysqld.exe –console –init-file=abcd.sql
4. new root password = MyNewPass


php session

Posted on

1. In your php.ini, enable session.use_cookies and specify session.save_path

About document.onmousemove

Posted on

referenc:How to drag and drop in javascript
document.onmousemove = mouseMove;

function mouseMove(ev){
ev = ev || window.event;
var mousePos = mouseCoords(ev);

function mouseCoords(ev){
if(ev.pageX || ev.pageY){
return {x:ev.pageX, y:ev.pageY};
return {
x:ev.clientX + document.body.scrollLeft - document.body.clientLeft,
y:ev.clientY + document.body.scrollTop - document.body.clientTop

We must first explain the event object. Whenever you move the mouse, click, press a key, etc., an event is fired. in Internet Explorer this event is global; it’s stored in window.event. In Firefox, and other browsers, this event is passed to whatever function is attached to the action. Since we attached the mouseMove function to document.onmousemove, mouseMove gets passed the event object.

To make ev contain the event object in every browser we OR it with window.event. In Firefox the " || window.event" will be ignored since ev already contains the event. In IE ev is null so it will get set to window.event.

Since we’ll need to obtain the mouse coordinates many times over this article we make a mouseCoords function that takes one argument: the event.

Again we run into differences between IE and other browsers. Firefox and other browsers use event.pageX and event.pageY to represent the mouse position relative to the document. If you have a 500×500 window and your mouse is in the middle, pageX and pageY will both be 250. If you then scroll down 500 pixels pageY will now by 750.

Contrary to this, IE decided to use event.clientX and event.clientY to represent the mouse position relative to the window, not the document. In our same example clientX and clientY will both be 250 if you put your mouse at the middle of a 500×500 window. If you scroll down on the page, clientY will remain 250 since it is measured relative to the window and not where you are on the document. As a result we need to add the scrollLeft and scrollTop properties of the document body to our mouse position. Finally, the document in IE isn’t actually at the 0,0 position. There is a small (usually 2px) border surrounding it. document.body.clientLeft and clientTop countain the width of this border, so we add those also to our mouse position.

Fortunately since we now have our mouseCoords function we don’t have to worry about this again.

setsockopt SO_LINGER

Posted on

只針對 socket 的 close() 發揮作用。
case 1 (default):
linger->l_onoff = 0; –> linger->l_linger no effect;
case 2:
linger->l_onoff !=0; linger->l_linger = 0 ;
close() immediately. 不管底層的資料是否送出,直接送一個 RST(reset)給另一端。因此另一端在 recv的時候,會產生 ECONNRESET 的 error

case 3:
linger->l_onff != 0; linger->l_linger != 0;
close() 會 block住或是等到 l_linger 的timeout時間到之後,產生 EWOULDBLOCK error

ref: http://www.developerweb.net/forum/archive/index.php/t-2982.html

list of mime types

Posted on


Description of Data Content Typical Filename Extensions MIME type/subtype
Text and Text-Related Types    
HTML text data (RFC 1866) html htm text/html
Plain text: documents; program listings txt c c++ pl cc h text/plain
Richtext (obsolete – replaced by text/enriched)   text/richtext
Structure enhanced text (etx?) text/x-setext
Enriched text markup (RFC 1896)   text/enriched
Tab-separated values (tabular) (tsv?) text/tab-separated-values
SGML documents (RFC 1874)   text/sgml
Speech synthesis data (MVP Solutions) talk text/x-speech
Document Stylesheet Types    
Cascading Stylesheets css text/css
DSSSL-online stylesheets   application/dsssl (proposed)
Image Types    
GIF gif image/gif
X-Windows bitmap (b/w) xbm image/x-xbitmap
X-Windows pixelmap (8-bit color) xpm image/x-xpixmap
Portable Network Graphics png image/x-png
Image Exchange Format (RFC 1314) ief image/ief
JPEG jpeg jpg jpe image/jpeg
TIFF tiff tif image/tiff
RGB rgb image/rgb
Group III Fax (RFC 1494) g3f image/g3fax
X Windowdump format xwd image/x-xwindowdump
Macintosh PICT format pict image/x-pict
PPM (UNIX PPM package) ppm image/x-portable-pixmap
PGM (UNIX PPM package) pgm image/x-portable-graymap
PBM (UNIX PPM package) pbm image/x-portable-bitmap
PNM (UNIX PPM package) pnm image/x-portable-anymap
Microsoft Windows bitmap bmp image/x-ms-bmp
CMU raster ras image/x-cmu-raster
Kodak Photo-CD pcd image/x-photo-cd
Computer Graphics Metafile cgm image/cgm
North Am. Presentation Layer Protocol   image/naplps
CALS Type 1 or 2 mil cal image/x-cals
Fractal Image Format (Iterated Systems) fif image/fif
QuickSilver active image (Micrografx) dsf image/x-mgx-dsf
CMX vector image (Corel) cmx image/x-cmx
Wavelet-compressed (Summus) wi image/wavelet
AutoCad Drawing (SoftSource) dwg image/vnd.dwg
AutoCad DXF file (SoftSource) dxf image/vnd.dxf
Simple Vector Format (SoftSource) svf image/vnd.svf
    also vector/x-svf
Audio/Voice/Music Related Types    
“basic"audio – 8-bit u-law PCM au snd audio/basic
Macintosh audio format (AIpple) aif aiff aifc audio/x-aiff
Microsoft audio wav audio/x-wav
MPEG audio mpa abs mpega audio/x-mpeg
MPEG-2 audio mp2a mpa2 audio/x-mpeg-2
compressed speech (Echo Speech Corp.) es audio/echospeech
Toolvox speech audio (Voxware) vox audio/voxware
RapidTransit compressed audio (Fast Man) lcc application/fastman
Realaudio (Progressive Networks) ra ram application/x-pn-realaudio
NIFF music notation data format   application/vnd.music-niff
MIDI music data mmid x-music/x-midi
Koan music data (SSeyo) skp application/vnd.koan
Speech synthesis data (MVP Solutions) talk text/x-speech
Video Types    
MPEG video mpeg mpg mpe video/mpeg
MPEG-2 video mpv2 mp2v video/mpeg-2
Macintosh Quicktime qt mov video/quicktime
Microsoft video avi video/x-msvideo
SGI Movie format movie video/x-sgi-movie
VDOlive streaming video (VDOnet) vdo video/vdo
Vivo streaming video (Vivo software) viv video/vnd.vivo
Special HTTP/Web Application Types    
Proxy autoconfiguration (Netscape browsers) pac application/x-ns-proxy-autoconfig
See Chapter 6   application/x-www-form-urlencoded
See Chapter 9   application/x-www-local-exec
See Chapter 9 (Netscape extension)   multipart/x-mixed-replace
See Chapter 9 and Appendix B   multipart/form-data
Netscape Cooltalk chat data (Netscape) ice x-conference/x-cooltalk
Interactive chat (Ichat)   application/x-chat
Application Types    
PostScript ai eps ps application/postscript
Microsoft Rich Text Format rtf application/rtf
Adobe Acrobat PDF pdf application/pdf
Maker Interchange Format (FrameMaker) mif application/vnd.mif
Troff document t tr roff application/x-troff
Troff document with MAN macros man application/x-troff-man
Troff document with ME macros me application/x-troff-me
Troff document with MS macros ms application/x-troff-ms
LaTeX document latex application/x-latex
Tex/LateX document tex application/x-tex
GNU TexInfo document texinfo texi application/x-texinfo
TeX dvi format dvi application/x-dvi
MacWrite document ?? application/macwriteii
MS word document ?? application/msword
WordPerfect 5.1 document ?? application/wordperfect5.1
SGML application (RFC 1874)   application/sgml
Office Document Architecture oda application/oda
Envoy Document evy application/envoy
Wang Info. Tranfer Format (Wang)   application/wita
DEC Document Transfer Format (DEC)   application/dec-dx
IBM Document Content Architecture (IBM)   application/dca-rft
CommonGround Digital Paper (No Hands Software)   application/commonground
FrameMaker Documents (Frame) doc fm frm frame application/vnd.framemaker
Remote printing at arbitrary printers (RFC 1486)   application/remote-printing
Archive/Compressed Archives    
Gnu tar format gtar application/x-gtar
4.3BSD tar format tar application/x-tar
POSIX tar format ustar application/x-ustar
Old CPIO format bcpio application/x-bcpio
POSIX CPIO format cpio application/x-cpio
UNIX sh shell archive shar application/x-shar
DOS/PC – Pkzipped archive zip application/zip
Macintosh Binhexed archive hqx application/mac-binhex40
Macintosh Stuffit Archive sit sea application/x-stuffit
Fractal Image Format fif application/fractals
Binary, UUencoded bin uu application/octet-stream
PC executable exe application/octet-stream
WAIS “sources" src wsrc application/x-wais-source
NCSA HDF data format hdf application/hdf
Downloadable Program/Scripts    
Javascript program js ls mocha text/javascript
VBScript program   text/vbscript
UNIX bourne shell program sh application/x-sh
UNIX c-shell program csh application/x-csh
Perl program pl application/x-perl
Tcl (Tool Control Language) program tcl application/x-tcl
Atomicmail program scripts (obsolete)   application/atomicmail
Slate documents – executable enclosures (BBN)   application/slate
Undefined binary data (often executable progs)   application/octet-stream
RISC OS Executable programs (ANT Limited)   application/riscos
Andrew Toolkit inset   application/andrew-inset
FutureSplash vector animation (FutureWave) spl application/futuresplash
mBED multimedia data (mBED) mbd application/mbedlet
Macromedia Shockwave (Macromedia)   application/x-director
Sizzler real-time video/animation   application/x-sprite
PowerMedia multimedia (RadMedia) rad application/x-rad-powermedia
PowerPoint presentation (Microsoft) ppz application/mspowerpoint
PointPlus presentation data (Net Scene) css application/x-pointplus
ASAP WordPower (Software Publishing Corp.) asp application/x-asap
Astound Web Player multimedia data (GoldDisk) asn application/astound
Special Embedded Object    
OLE script e.g. Visual Basic (Ncompass) axs application/x-olescript
OLE Object (Microsoft/NCompass) ods application/x-oleobject
OpenScape OLE/OCX objects (Business@Web) opp x-form/x-openscape
Visual Basic objects (Amara) wba application/x-webbasic
Specialized data entry forms (Alpha Software) frm application/x-alpha-form
client-server objects (Wayfarer Communications) wfx x-script/x-wfxclient
General Applications    
Undefined binary data (often executable progs)   application/octet-stream
CALS (U.S. D.O.D data format – RFC 1895)   application/cals-1840
Pointcast news data (Pointcast) pcn application/x-pcn
Excel spreadsheet (Microsoft)   application/vnd.ms-excel
PowerPoint (Microsoft) ppt application/vnd.ms-powerpoint
Microsoft Project (Microsoft)   application/vnd.ms-project
Works data (Microsoft)   application/vnd.ms-works
MAPI data (Microsoft)   application/vnd.ms-tnef
Artgallery data (Microsoft)   application/vnd.artgalry
SourceView document (Dataware Electronics) svd application/vnd.svd
Truedoc (Bitstream)   application/vnd.truedoc
Net Install – software install (20/20 Software) ins application/x-net-install
Carbon Copy – remote control/access (Microcom) ccv application/ccv
Spreadsheets (Visual Components) vts workbook/formulaone
Cybercash digital money (Cybercash)   application/cybercash
Format for sending generic Macintosh files   application/applefile
Active message — connect to active mail app.   application/activemessage
X.400 mail message body part (RFC 1494)   application/x400-bp
USENET news message id (RFC 1036)   application/news-message-id
USENET news message (RFC 1036)   application/news-transmission
Multipart Types (mostly email)    
Messages with multiple parts   multipart/mixed
Messages with multiple, alternative parts   multipart/alternative
Message with multiple, related parts   multipart/related
Multiple parts are digests   multipart/digest
For reporting of email status (admin.)   multipart/report
Order of parts does not matter   multipart/parallel
Macintosh file data   multipart/appledouble
Aggregate messages; descriptor as header   multipart/header-set
Container for voice-mail   multipart/voice-message
HTML FORM data (see Ch. 9 and App. B)   multipart/form-data
Infinite multiparts – See Chapter 9 (Netscape)   multipart/x-mixed-replace
Message Types (mostly email)    
MIME message   message/rfc822
Partial message   message/partial
Message containing external references   message/external-body
Message containing USENET news   message/news
HTTP message   message/http
2D/3D Data/Virtual Reality Types    
VRML data file wrl vrml x-world/x-vrml (changing to model/vrml)
WIRL – VRML data (VREAM) vrw x-world/x-vream
Play3D 3d scene data (Play3D) p3d application/x-p3d
Viscape Interactive 3d world data (Superscape) svr x-world/x-svr
WebActive 3d data (Plastic Thought) wvr x-world/x-wvr
QuickDraw3D scene data (Apple) 3dmf x-world/x-3dmf
Scientific/Math/CAD Types    
Chemical types — to communicate information about chemical models   chemical/* (several subtypes)
Mathematica notebook ma application/mathematica
Computational meshes for numerical simulations msh x-model/x-mesh(evolving to model/mesh)
Vis5D 5-dimensional data v5d application/vis5d
IGES models — CAD/CAM (CGM) data igs application/iges(evolving to model/iges?)
Autocad WHIP vector drawings dwf drawing/x-dwf
Largely Platform-Specific Types    
Silicon Graphics Specific Types    
Showcase Presentations showcase slides sc sho show application/x-showcase
Insight Manual pages ins insight application/x-insight
Iris Annotator data ano application/x-annotator
Directory Viewer dir application/x-dirview
Software License lic application/x-enterlicense
Fax manager file faxmgr application/x-fax-manager
Fax job data file faxmgrjob application/x-fax-manager-job
IconBook data icnbk application/x-iconbook
? wb application/x-inpview
Installable software in ‘inst’ format inst application/x-install
Mail folder mail application/x-mailfolder
? pp ppages application/x-ppages
Data for printer (via lpr) sgi-lpr application/x-sgi-lpr
Software in ‘tardist’ format tardist application/x-tardist
Software in compressed ‘tardist’ format ztardist application/x-ztardist
WingZ spreadsheet wkz application/x-wingz
Open Inventor 3-D scenes iv graphics/x-inventor

How to get the url of an anchor or an image by drag and drop?

Posted on

drag the anchor, or the image, in a browser to another one, call reciever, the reciever can get the url of the anchor by:
1. in the reciever set the handler of the event “ondrop"

<div ondrop="GetURL();">

2. in the event handler get the data “URL" from the object, dataTransfer, of event

<script type="text/javascript">
function GetURL()
alert (event.dataTransfer.getData("URL") );