Can i call a flash function from php?

What exactly do you want to acheive?

If you want to generate flash movie using php, then yes, it's possible

I'm actually trying to embed a flash within a form and then on submit, to call the flash function and retrieve data out to php.

I was hoping to achieve something similar to http://www.dracon.biz/contacts.php but have no idea how they do the form passing, how it works.

I'm actually trying to embed a flash within a form and then on submit, to call the flash function and retrieve data out to php.

I was hoping to achieve something similar to http://www.dracon.biz/contacts.php but have no idea how they do the form passing, how it works.

I looked at their site. I dont think they are doing any time of calls from flash to php. What you see is a normal html form, then onsubmit (or onclick on submit button) javascript replaces some html with a new html snippet that contains a flash movie.

OK, the only thing they may have to do in php is to generate the flash movie that contains the captcha text. This probably had to be done on the server in order to keep track what captcha text they gave you. But again, this effect can be acheived even without the server, the captcha text could have been generated when the form originally is generated then a javascript can interact with flash movie to add the value of patcha text there.

There are a few good tutorials, a few easy tutorials, unfortunately no good easy tutorials,
but,
No Warrant of fitness for any purpose. etc etc

TechRepublic php/flash
IBM Generate Flash on the Fly, with php

Shockwave Flash Functions
Introduction
PHP offers the ability to create Shockwave Flash files via Paul Haeberli's libswf module.
Note:
SWF support was added in PHP 4 RC2.
The libswf does not have support for Windows. The development of that library has been stopped, and the source is not available to port it to another systems.

For up to date SWF support take a look at the MING functions.
Note:
This extension has been moved to the » PECL repository and is no longer bundled with PHP as of PHP 5.0.0.

Requirements
You need the libswf library to compile PHP with support for this extension. You can download libswf at » ftp://ftp.sgi.com/sgi/graphics/grafica/flash/.

Installation
Once you have libswf all you need to do is to configure --with-swf[=DIR] where DIR is a location containing the directories include and lib. The include directory has to contain the swf.h file and the lib directory has to contain the libswf.a file. If you unpack the libswf distribution the two files will be in one directory. Consequently you will have to copy the files to the proper location manually.

Runtime Configuration
This extension has no configuration directives defined in php.ini.

Resource Types
This extension has no resource types defined.

Predefined Constants
The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

MOD_COLOR (integer)
MOD_MATRIX (integer)
TYPE_PUSHBUTTON (integer)
TYPE_MENUBUTTON (integer)
BSHitTest (float)
BSDown (float)
BSOver (float)
BSUp (float)
OverDowntoIdle (integer)
IdletoOverDown (integer)
OutDowntoIdle (integer)
OutDowntoOverDown (integer)
OverDowntoOutDown (integer)
OverUptoOverDown (integer)
OverUptoIdle (integer)
IdletoOverUp (integer)
ButtonEnter (integer)
ButtonExit (integer)
MenuEnter (integer)
MenuExit (integer)
Examples
Once you've successfully installed PHP with Shockwave Flash support you can then go about creating Shockwave files from PHP. You would be surprised at what you can do, take the following code:

Example 2503. SWF example
copy to clipboard

<?php
swf_openfile("test.swf", 256, 256, 30, 1, 1, 1);
swf_ortho2(-100, 100, -100, 100);
swf_defineline(1, -70, 0, 70, 0, .2);
swf_definerect(4, 60, -10, 70, 0, 0);
swf_definerect(5, -60, 0, -70, 10, 0);
swf_addcolor(0, 0, 0, 0);

swf_definefont(10, "Mod");
swf_fontsize(5);
swf_fontslant(10);
swf_definetext(11, "This be Flash wit PHP!", 1);

swf_pushmatrix();
swf_translate(-50, 80, 0);
swf_placeobject(11, 60);
swf_popmatrix();

for ($i = 0; $i < 30; $i++) {
   $p = $i/(30-1);
   swf_pushmatrix();
   swf_scale(1-($p*.9), 1, 1);
   swf_rotate(60*$p, 'z');
   swf_translate(20+20*$p, $p/1.5, 0);
   swf_rotate(270*$p,  'z');
   swf_addcolor($p, 0, $p/1.2, -$p);
   swf_placeobject(1, 50);
   swf_placeobject(4, 50);
   swf_placeobject(5, 50);
   swf_popmatrix();
   swf_showframe();
}

for ($i = 0; $i < 30; $i++) {
   swf_removeobject(50);
   if (($i%4) == 0) {
       swf_showframe();
   }
}

swf_startdoaction();
swf_actionstop();
swf_enddoaction();

swf_closefile();
?>

Table of Contents
swf_actiongeturl — Get a URL from a Shockwave Flash movie
swf_actiongotoframe — Play a frame and then stop
swf_actiongotolabel — Display a frame with the specified label
swf_actionnextframe — Go forward one frame
swf_actionplay — Start playing the flash movie from the current frame
swf_actionprevframe — Go backwards one frame
swf_actionsettarget — Set the context for actions
swf_actionstop — Stop playing the flash movie at the current frame
swf_actiontogglequality — Toggle between low and high quality
swf_actionwaitforframe — Skip actions if a frame has not been loaded
swf_addbuttonrecord — Controls location, appearance and active area of the current button
swf_addcolor — Set the global add color to the rgba value specified
swf_closefile — Close the current Shockwave Flash file
swf_definebitmap — Define a bitmap
swf_definefont — Defines a font
swf_defineline — Define a line
swf_definepoly — Define a polygon
swf_definerect — Define a rectangle
swf_definetext — Define a text string
swf_endbutton — End the definition of the current button
swf_enddoaction — End the current action
swf_endshape — Completes the definition of the current shape
swf_endsymbol — End the definition of a symbol
swf_fontsize — Change the font size
swf_fontslant — Set the font slant
swf_fonttracking — Set the current font tracking
swf_getbitmapinfo — Get information about a bitmap
swf_getfontinfo — Gets font information
swf_getframe — Get the frame number of the current frame
swf_labelframe — Label the current frame
swf_lookat — Define a viewing transformation
swf_modifyobject — Modify an object
swf_mulcolor — Sets the global multiply color to the rgba value specified
swf_nextid — Returns the next free object id
swf_oncondition — Describe a transition used to trigger an action list
swf_openfile — Open a new Shockwave Flash file
swf_ortho2 — Defines 2D orthographic mapping of user coordinates onto the current viewport
swf_ortho — Defines an orthographic mapping of user coordinates onto the current viewport
swf_perspective — Define a perspective projection transformation
swf_placeobject — Place an object onto the screen
swf_polarview — Define the viewer's position with polar coordinates
swf_popmatrix — Restore a previous transformation matrix
swf_posround — Enables or Disables the rounding of the translation when objects are placed or moved
swf_pushmatrix — Push the current transformation matrix back unto the stack
swf_removeobject — Remove an object
swf_rotate — Rotate the current transformation
swf_scale — Scale the current transformation
swf_setfont — Change the current font
swf_setframe — Switch to a specified frame
swf_shapearc — Draw a circular arc
swf_shapecurveto3 — Draw a cubic bezier curve
swf_shapecurveto — Draw a quadratic bezier curve between two points
swf_shapefillbitmapclip — Set current fill mode to clipped bitmap
swf_shapefillbitmaptile — Set current fill mode to tiled bitmap
swf_shapefilloff — Turns off filling
swf_shapefillsolid — Set the current fill style to the specified color
swf_shapelinesolid — Set the current line style
swf_shapelineto — Draw a line
swf_shapemoveto — Move the current position
swf_showframe — Display the current frame
swf_startbutton — Start the definition of a button
swf_startdoaction — Start a description of an action list for the current frame
swf_startshape — Start a complex shape
swf_startsymbol — Define a symbol
swf_textwidth — Get the width of a string
swf_translate — Translate the current transformations
swf_viewport — Select an area for future drawing

This article has been dead for over six months. Start a new discussion instead.