I already have a MySQL database. How can
I use it with PHPMagic?
You have two ways of doing this: The hard way, and the easy
The hard way involves redefining all
the tables and fields of your database in PHPMagic, making
sure that field data types and sizes are correctly set, primary
keys correctly defined, unique fields correctly set, ... etc.
The above is so tedious obviously, specially when you have
large databases. So, we come to the easy way: MySQL2PHPMagic.
This is a tiny add-on wizard that does all the work on your
behalf. You get this software Free when your purchase phpmagic
pro or our phpmagic plus version.
Both methods above will result in an PHPMagic project file
that can be used to generate a web interface for your database.
there a way to make a table that is editable by admin user,
and only viewable by other people?
Generate two copies of your application. One for users
and the other for admins, each in a separate folder. That's
a very common approach for web developers. They write two
versions of their database applications: one for users and
one for admins.
Upload the admin version of the generated files to a password-protected
folder and give the password only to authorized persons.
If you want to protect the users version of your application,
use a different login and password for its folder. We also offer
a php/mysql script generator to create members area access to any area on your site. more...
I don't want users to be able to delete records, but
I do want them to be able to add. Is this possible?
Within PHPMagic you can enable or disable each table's
functionality by simply checking or unchecking the tic-boxes
for allowing adding, deleting, updating, hiding and more.
For example you, the admin may want all the admin features
enables so you would check all the checkbox and save the
project file in foldera. Create a second project file and
enable only the add checkbox. Save this project file
in folderb. Now generate your project files for each project
file. Upload both folders with the generated code to your
web server. Run the setup.php file from either foldera
or folderb. This only needs to be done once. Once the setup.php
file has been ran you should delete the setup.php file from both folders. The setup.php file creates a file named config.php. Depending on the folder you ran the setup.php from copy the created config.php to the other folder. Now you would use the link www.yourdomain.tld/folderb/index.html
from your html doc or web page for end users. To login as
admin only you would know the path to the foldera or admin
files so you can have a path like www.yourdomain.tld/foldera/secretfolder/index.html
PHPMagic display images?
Sure! First of all, you need to know that the images aren't really stored in the database. Instead, only the path to the images is stored in the database, while the images are saved on your server's hard drive in a folder.
For this reason, the database field you use as an image field must be a text-type field. PHPMagic forces this field to be a CHAR or VARCHAR of length 40 or more.
If you check "Display as image in table view", PHPMagic scripts would read the image path stored in the image field and display the image in the table view.
"Display as image in detail view" is the same as above except that the image is displayed in the detail view. If you check both options, the image will appear in both the detail and table views.
Checking the option "Allow users to upload images" will display a "Browse" button for users so that they can choose an image from their computer to upload.
But what happens when users upload an image or file? First of all, PHPMagic scripts check to see if the uploaded file is indeed a file type you selected for this field and it's size doesn't exceed the size you specify in the box labeled "Maximum acceptable image size in bytes".
One final thing you should know about handling images: Where does PHPMagic store the uploaded images? Images are stored in a subfolder named "images" inside the folder where you have uploaded the scripts.
If you want to change this to another location, open the generated file "language.php" and change the path in the last line of code in this file, which reads:
$Translation["ImageFolder"] = "./images/";
Change ./images/ above to the appropriate path. Remember to move in images in the old path to the new one.
it possible to have a dropdown that combines 2 fields? Let's
say I have a table that has 3 fields: id, fname, lname.
I want the user to select a fname, lname combo so the id
gets stored in a second table.
Yes. Let's assume your table is called "clients". One of the
generated files will be named "clients_dml.php". Open it in
a text editor, and find the function called form(). Look for
a line that reads something like this:
$combo_name->Query = "select id, lname from authors order by
This is the query used to populate the drop down menu. Change
$combo_name->Query = "select id, concat(fname, ' ', lname) from
authors order by lname";
This will "concatenate" or join first name and last name in
the drop down.
I want to allow users specific access permissions.
Take a look at our Plus version which allows you the admin to control access of users using group access permissions.
can I calculate a formula based on two or more fields, for
example, subtotal=unit_price * quantity?
Let's assume your table is called "order_data". In the folder
containing the PHPMagic-generated files, look for a file named
"order_data_view.php". Open this file in a text editor.
Now, on line 17 of that file, you will see the SQL query used
to display the table view. It looks something like this (on
a single line):
= "select item as 'Item', unit_price as 'Unit price', qty
as 'Quantity' from order_data";
All you need to do is modify the query to something like this
(on a single line):
$x->Query = "select item as 'Item', unit_price as
'Unit price', qty as 'Quantity', unit_price * qty as 'Subtotal'
Then save the changes and upload the file to your web server.
do I make "TimeStamp" field viewed like "mm/dd/yyyy" or
"mm-dd-yyyy" in table view?
You'll need to make some tiny code modifications for changing
date format. To change the date format in table view, open
the generated file "tablename_view.php" in your text editor,
go to line 17, which reads something like:
$x->Query = "select ...., timestamp_field as 'Time
Stamp', ... from .....";
Now change it to:
$x->Query = "select ...., DATE_FORMAT(timestamp_field,'%d/%m/%Y
%H:%i:%s') as 'Time Stamp', ... from .....";
This would display the date as day/month/year hour:minute:second
... you can modify the format string '%d/%m/%Y
%H:%i:%s' to change the way the date is displayed.
does my virus program warn me every time I try to use PHPMagic
to generate code?
PHPMagic uses a Windows component called Scripting Host (scrrun.dll).
It uses it to copy files during code generation. Since many
email viruses use the same component to do malicious operations
(deleting files or altering them ... etc), virus scanners
issue an alert when any application tries to use this component.
You should choose to continue or put PHPMagic in the allowed
list as it merely uses the scripting host to copy its generated
Please note that you should regularly scan your system for
viruses to ensure all files are virus-free.
can I add clickable links in the table?
It can be done using a simple tweak. Use a VarChar or a Char
field in which you will store the URL of your link. Let's
call this field 'my_link' and let's assume that the table
name is 'products'.
After PHPMagic generates the PHP code, find the file named
'products_view.php' and open it in a text editor ... go to
around line 17, which contains the query used to display the table
blablabla, products.my_link as 'Link', blablabla FROM products
Now, modify the query to read:
SELECT blablabla, CONCAT('<a href=',
products.my_link, ' target=_blank>', products.my_link,
'</a>') as 'Image', blablabla FROM products ...
The idea is to let MySQL return an html anchor (<a>)
tag instead of the link text ... (Only valid for versions 3.0 and below.) Version 3.1 now offers clickable link options.
How can I change appearance or theme of my database?
The appearance of the generated application
can be customized through CSS styles using the styles button within PHPMagic.
You can easily create your own customized style. We have a few samples here to get you started. You can also use the generated blank header.php and footer.php files to give your database more appealing and effective by simply inserting you own html code.
How about different language support ?
We have had some users submit language.php files to replace the engish language file generated.
System requirements: Windows 98/NT/2000/XP/Vista/Win7 - 32&64 bit supported.
Target system requirements:
The target system is where you will install the generated PHP
applications — a web server that supports PHP
scripting; PHP 4 or higher; MySQL 3.x or higher. You will need to create a database with your hosting company or use an existing one.
also suggest installing a copy of PHPMyAdmin on your server.
It is an excellent database administrative interface for