PAW supports BeanShell code to create dynamic pages. BeanShell is well suited for Android, because it integrates will into the OS by supporting the Android Java API.
The foundation of PAW is Brazil a web application framework which was developed by SUN (now Oracle). Although not widely used the framework has the advantage of being very small and flexible.
What I was thinking about for a while was to add PHP support. PHP is widely used around the net. PHP's reputation is questionable and that are people who love and others who hate it. But it's undoubtedly one of the most used frameworks when it comes to web development.
PHP basically comes in two flawors, a CLI and a CGI version. To integrate PHP into the context of a web server the CGI version is needed.
Android PHP Project
Knowing that there is a CLI version provided by the Android PHP Project I headed over to their forum asking if they could provide a CGI version in addition to the CLI version.
Unfortunately the guys told me that a CGI version will not be provided by the project because it's not needed and pointed me to a page which describes shortly how to setup the tool-chain to do a cross compile of PHP.
Cross Compiling
So I tried to compile PHP myself. I have a Linux box at home so I'm quite familiar with doing configure/make and all this things but the last time I dug into C sources and header files is approx. 10 years back. So this was quite a challenge. Finally I got it working, but I think I did a lousy job. So if somebody can do it better, please go ahead and send me the php-cgi binary.
The CGI Handler
After I had the binary I extended and changed the CGI handler that is included with Brazil to work with Android. Due to some changes in the Brazil source that I have done concerning upload size limits the original handler could not be used. In the process I also tried to add SL4A support. I haven't tested this until know, but I hope it will be working.
SL4A Support
SL4A support is a little bit tricky, because one has to know the port the SL4A is listening to. So I looked around how to get hold of the port and found out that the port is reported in the logcat.
So on startup of the handler (on start of the PAW service) the handler looks into logcat and tries to find the SL4A host name and port number. These values are associated with the AP_HOST and AP_PORT environment variables. So SL4A the server has to be started shortly before PAW starts up.
The Plugin
PHP will be available as plugin shortly after the next release of PAW (which should be in the next month). PAW will then come with the new handler. Providing PHP as plugin has the advantage that PAW itself does not grow (much) in size. PHP is approx. 3 MB in size and so relatively large.
The plugin can be downloaded from an external website and extracted into the PAW plugin folder.
A new page showing available plugins will be included into the next PAW release.
Plugins in the Add-Ons menu |
After extracting the plugin it should be visible under PAW's plugin menu.
Plugin in the Plug-ins menu |
Installation of PHP should be a one click action and after a restart of PAW PHP should be available.
PHP Installation |
PHP has been tested using a Google Nexus One and a Notion Ink Adam. The result of phpinfo() can be viewed here.
This is work in progress but it looks promising although not all PHP pages will be working but basic stuff should.
So stay tuned, I hope to finish this in a couple of weeks :)
Note:
PAW for Android 0.58 is now available at the Android Market.
The PHP plug-in is also available.
Update
If you have trouble downloading the PHP plugin from the original location, you can try the alternate link at Google Drive: PAW Plugins
hi is it possible to install extensions to make connections with mysql or soap
ReplyDeleteExtensions might work (haven't tried it), so IMHO they have to be compiled for ARM.
ReplyDeleteI'm not very familiar with PHP. Used it on a couple of occasions for simple stuff but not more.
No idea how to enable mySQL support. If you know how to do it, let me know.
Will it be possible to add cURL_exec and/or GDlib?
ReplyDeleteI think modules should work if compiled for ARM processors. Haven't tried. Would be nice if someone could try that.
ReplyDeleteHow about PHP-FPM instead FCGI?
ReplyDeleteGD is bundeld with PHP, but you didn't enable it. What was the reason?
The server does not support Fast CGI.
ReplyDeleteI'm not using PHP much and I'm not aware of all things that could or should be compiled into the binary.
If you tell me the configure option I can try to recompile with that.
If someone wants to take over the part and maintain the plug-in, that's also fine with me.
We tried the php cgi support for PAW on Android. It works great. I was wondering how to enable PEAR / PECL support. Should we recompile PHP CGI or is PEAR / PECL a separate binary that we can run along side the current one. Any help is appreciated.
ReplyDelete@svenk9575
ReplyDeleteGlad that it's working :)
I'm really not much into the whole PHP thing.
If you like, you can send me a mail (jochen [at] fun2code.de). It might be more efficient than discussing it in the blog.
Thanks for for this! It's working great. Very appreciated.
ReplyDeleteThis is amazing!!!! Im hosting phpliteadmin on my phone and managing all my development databases from my desktop.
ReplyDeleteYep ! PAW server is a web server for the Android devices.It was just amazing to know that functionality of the phone can be used from a web browser.I heard that latest changes like Internationalization support has been made.
ReplyDeleteHi, I'm very much the novice tinkerer with code. I'm wondering if I install paw can I host a PHP/SQL based site ( for example WordPress etc). The basic idea is not to serve publicly, but to make available the functionality to the device user. That is to say build a dynamic site which would be more customisable than any available 'business app'... I've got memento by luckydroid, and mobileBiz (both pro versions), and need a way to take the best of both worlds into one interface... end result being custom built relational database usage in an offline (in field / out of range) scenario, for the purposes of industry specific project surveying/costing, and management. Also keeps sensitive data away from cloud..
ReplyDeleteAny thoughts, suggestions, experiences with such a concept other than learning Java and building a specific app to do such a thing/
SQLite is supported both for PHP and BeanShell scripts.
DeleteThe PHP plugin is not perfect, it has it's problems and limitations.
If you start from scratch, consider using BeanShell or pre-compiled classes.
Thanks Jochen
ReplyDeleteIf you have specific questions you can contact me directly via mail:
Deletejochen [at] fun2code.de
I can use the ftp functions programing in php?
ReplyDeleteHow to install phpbb ? Not support database :(( (sqlite, mysql, ... not available)
ReplyDeleteNever tried phpbb, but SQLite should be working. At least PHPLiteAdmin works.
DeleteHi...I have installed PAW server, but I'm unable to install the PHP setup. Please help. The timezone is not visible, and when I click on install, it stays on the same page.
ReplyDeleteusing, eg, the classic php it generates a folder to use as a local server ..
ReplyDeleteIn this case, I can execultar page locations.
And where should I put them in order to run.
PHP setup? Where can I find it? Link seems dead
ReplyDeletePlease try the following link:
Deletehttp://rapidshare.com/files/3332837530/php_plugin.zip
I would like to add php code into my Xhtml I have read to switch short_open_tag to Off how can i do this in paw server?
ReplyDeleteI just want to say Jochen a huge - THANK YOU !!!!!!!!!
ReplyDeletePlease help :'(
ReplyDeleteWhen I went to
http://192.168.0.129:8080/app/plugins/php_plugin/
and clicked install , I went to
http://192.168.0.129:8080/app/plugins/php_plugin/phpinfo.php
it showed me that
Got the error: Not Found
while trying to obtain /app/plugins/php_plugin/phpinfo.php
But I'm sure that the file exists......what should I do? Thanks!
Did you do a server restart?
DeleteIf you did and you are still getting the error, please set the loglevel (in server settings) to 5, restart the server and send me the logfile (normally /sdcard/paw/logs/sever.log) to the following mail address: jochen [at] fun2code.de
Hello Jochen,
DeleteI have the same problem as described above. The only entry in the server.log is
# Start of PAW logfile
Nothing more.
The server is running well, but PHP-Files are not found. If I change the mime-type for PHP files to "text/html" in the handler.xml, the PHP files are shown, but without using the PHP interpreter.
I am using Gingerbread on a system without SD-Card.
I tried changing the the entries in the php.ini from '/mnt/sdcard' to '/sdcard' (this folder exists and PAW installed itself there) but it always seems like PHP is inactive.
Can it be that the PHP-Interpreter is copied to a place on the SD-Card that is not existing?
Peter
Hi Peter,
Deleteif you have set the loglevel to 5 and restarted the server there should be something inside the log.
The PHP binary is copied to the /data/data directory, so that should be fine. What sometimes can happen is, that the permissions are not set correctly.
What yo can try is to execute the following command inside the BeanShell console:
exec("ls -l /data/data/de.fun2code.android.pawserver/bin/php-cgi");
The result should look something like this:
-rwxr-xr-x u0_a73 u0_a73 13678956 2013-04-17 13:11 php-cgi
Hi Jochen,
Deleteyou had been right with the rights. I changed them by chmod 755 php-cgi via adb.
Unfortunately this did not change anything ;-(
So I tried to set the log level in the conf/server.xml to 5.
It still said phpinfo.php not found in the browser. But the logfile showed some entries containing [PAW_HOME]. I looked for such entries in the config-files and found them in the conf/handler.xml. So I replaced them with my real path /sdcard/paw.
Also in the php.ini there had been entries with /mnt/sdcard. As I have no real sdcard but only a folder /sdcard I changed /mnt/sdcard to /sdcard in the php.ini.
And now it works fine.
Thanks for your quick help
The basic idea is not to serve publicly, but to make available the functionality to the device user.
ReplyDeleteIt still said phpinfo.php not found in the browser. But the logfile showed some entries containing ....
ReplyDeletePlease check the PHP permissions as decribed in a reply above and if the [PAW_HOME] has been replaced inside the conf/handler.xml. If [PAW_HOME] is not replaced, replace it manually with your PAW installation directory (most of the time /sdcard/paw).
DeleteHello Jochen,
ReplyDeleteit's Peter again ...
I have a little problem with the server: In 90% of the starts it works perfectly, but in about 10% the server does not start correctly after the system is rebooted.
The following entries are in the logfile (192.168.10.49 is my PC, 192.168.220.1 ist the android device):
LOG: 4 9000-server: 192.168.10.49: new connection
LOG: 3 9000-192.168.10.49-5: Request 24 GET /index.php HTTP/1.1
LOG: 5 9000-192.168.10.49-5: main.: invoking handler: cookieSessionHandler
LOG: 4 9000-192.168.10.49-5: cookieSessionHandler.: Using cookie: 7bqhrh1vrdub618031cdfb
LOG: 5 9000-192.168.10.49-5: main.: invoking handler: auth
LOG: 5 9000-192.168.10.49-5: main.: invoking handler: phpCgiHandler
LOG: 5 9000-192.168.10.49-5: phpCgiHandler. suffix=.php root=/data/html url: /index.php
LOG: 5 9000-192.168.10.49-5: phpCgiHandler. looking for: /data/html/index.php
LOG: 5 9000-192.168.10.49-5: phpCgiHandler. command= /data/data/de.fun2code.android.pawserver/bin/php-cgi -c /sdcard/paw/html/app/plugins/php_plugin/conf /data/peter/html/index.php
LOG: 5 9000-192.168.10.49-5: phpCgiHandler. ENV= [HTTP_HOST=192.168.220.1:9000, HTTP_USER_AGENT=Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0, HTTP_ACCEPT=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, HTTP_ACCEPT_LANGUAGE=de-de,de;q=0.8,en-us;q=0.5,en;q=0.3, HTTP_ACCEPT_ENCODING=gzip, deflate, HTTP_DNT=1, HTTP_CONNECTION=keep-alive, HTTP_COOKIE=cookie=7bqhrh1vrdub618031cdfb; PHPSESSID=dbd08e8307d2f5060829eb92e7cad83b, GATEWAY_INTERFACE=CGI/1.1, SERVER_SOFTWARE=Mini Java CgiHandler 0.3, SERVER_NAME=127.0.0.1, SCRIPT_FILENAME=/data/peter/html/index.php, PATH_INFO=, SCRIPT_NAME=/index.php, SERVER_PORT=9000, REMOTE_ADDR=192.168.10.49, PATH_TRANSLATED=/data/peter/html, REQUEST_METHOD=GET, SERVER_PROTOCOL=HTTP/1.1, QUERY_STRING=, SERVER_URL=http://192.168.220.1:9000, REDIRECT_STATUS=200, TMPDIR=/data/peter/temp]
LOG: 3 9000-192.168.10.49-5: request done
LOG: 3 9000-192.168.10.49-5: Error: 408 Request Time-out: null
LOG: 4 9000-192.168.10.49-5: socket close
LOG: 4 9000-Thread-10: server: PAW Server started on port 9000
LOG: 5 9000-server: main.: starting handler: cookieSessionHandler
LOG: 5 9000-server: main.: starting handler: auth
LOG: 5 9000-server: main.: starting handler: phpCgiHandler
If the Paw-server does not start, I also cannot start it manually with your app. The app says, the server is running (though it does not), after I stop the server it says it is stopped, but when I want to restart it, an error message apears that the server could not be started and that I should contact android@fun2code.de (that's what I'm doing right now).
Do you have a solution?
Thanks,
Peter
I see permission error when unzipping the php zip. Do I need to root to unzip?
ReplyDeleteThe recommended way is to unpack the ZIP on a PC and then to copy it into the paw/html/app/plugins folder on your Android device.
DeleteRoot is not required.
iam try to put flv file on directory. but if i open, show error below :
ReplyDeleteGot the error: Not Found
while trying to obtain /test/wap/video.flv
how to fix it?
Thanks
Are you sure, that the path is correct?
ReplyDeleteCan you store on /test? Shouldn't that be /sdcard/test?
solved, add video/x-flv flv on Mymetypes.
ReplyDeleteThank bro, Paw is awesome
Hi, I am trying to set a mimetype so html and htm files are interpreted as php files. I have had theses mimetypes
ReplyDeletetext/html
application/x-httpd-php html htm
application/x-httpd-php5 html htm
But my html files are still interpreted as html. (php files are running ok).
When I log 5 i can see that:
LOG: 3 8080-10.3.0.57-103: Request 24 GET /som/13999dev2/ HTTP/1.1LOG: 4 8080-server: 10.3.0.57
: new connection
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: cookieSessionHandler
LOG: 4 8080-10.3.0.57-103: cookieSessionHandler.: Using cookie: 64ou55qmuh71e18k4fepk4
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: auth
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: phpCgiHandler
LOG: 5 8080-10.3.0.57-103: phpCgiHandler. suffix=.php root=/storage/emulated/0/paw/html url: /som/13999dev2/
LOG: 4 8080-server: 10.3.0.57: new connection
LOG: 5 8080-10.3.0.57-103: phpCgiHandler. looking for: /storage/emulated/0/paw/html/som
LOG: 5 8080-10.3.0.57-103: phpCgiHandler. looking for: /storage/emulated/0/paw/html/som/13999dev2
LOG: 5 8080-10.3.0.57-103: phpCgiHandler. looking for: /storage/emulated/0/paw/html/som/13999dev2
LOG: 4 8080-server: 10.3.0.57: new connection
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: nativemapper
LOG: 5 8080-10.3.0.57-103: nativemapper.: No mapping found for URL: /som/13999dev2/
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: bsh
LOG: 5 8080-10.3.0.57-103: bsh.: Looking for file: (/storage/emulated/0/paw/html)(/som/13999dev2/)
LOG: 4 8080-10.3.0.57-103: bsh.: no such file: /storage/emulated/0/paw/html/som/13999dev2/index.xhtml
LOG: 5 8080-10.3.0.57-103: main.: invoking handler: filehandler
LOG: 5 8080-10.3.0.57-103: filehandler.: Looking for file: (/storage/emulated/0/paw/html)(/som/13999dev2/)
LOG: 3 8080-10.3.0.57-103: request done
LOG: 4 8080-10.3.0.57-103: socket close
Correct me if I am wrong but it seems like phpCgiHandler is only looking for .php files.
LOG: 5 8080-10.3.0.57-103: phpCgiHandler. suffix=.php root=/storage/emulated/0/paw/html url: /som/13999dev2/
Please help. =)
Mimetype definition is not important regarding CGI execution.
DeleteHave a look at the /sdcard/paw/conf/handler.xml file and especially at the PHP handler definition. There you should find the file extension.
Ok i had
Deleteparam name="phpCgiHandler.suffix" value=".php"
Then I changed it to look like this (just for testing)
param name="phpCgiHandler.suffix" value=".html"
and unfortunately my .html files are still not interpreted as php files.
Is there a better way to do this?
Strange, that worked for me.
DeleteDid you restart the server after changing the configuration?
Ok its working now. Your solution was correct, I just had some problems with writting permissions on the device witch cause the file handler.xml to be unchanged.
Deletetks alote for your help!
I am just wondering if you can publish a sample PHP code snippet to explain how to call PAW server functions via PHP (e.g. from Raspberry Phi)...
ReplyDeleteCool would be a code sample for calling "text to speech"...
Thanks!
There is no Android API integration into PHP. As with any other language the PHP binary will run in a separate process and not inside the Dalvic VM.
ReplyDeleteWhat you can do is to write a BeanShell script, included in a xhtml file, and to call that page from your PHP script.
Thanks Jochen.
ReplyDeleteMaybe I haven't been precise enough in specifying my question:
If e.g. I want let "to talk" my android 'Hello John, welcome back again" device having installed PAW server, can I call my android device via HTTP call like
http://192.168.0.22:8080/urlparser.php?saytext='Hello John, welcome back!'&lang='EN'
So to call any of the functions provided by PAW Server via simple HTTP calls...
Sorry for being so stupid but I am not very familiar with all this stuff.
BTW - PAW Server is a great piece of software - many thanks to you!
This won't work with PHP because it can't use the Android API.
DeleteThe following should work...
Create a xhtml file (e.g. /sdcard/paw/html/speak.xhtml) and put in the following content:
<bsh>
speak(parameters.get("saytext"), new Locale(parameters.get("lang")));
</bsh>
Now you can call the file like this:
http://:8080/speak.xhtml?saytext=Hello%20John,%20welcome%20back!&lang=EN
OK works like a charm. There is now only one question left:
DeleteIs there also a similar approach form playing an MP3 file on base of a HTTP call?
Thanks!
You can use the Android Mediaplayer API.
DeleteThe following code will play the first 10 seconds of a MP3 and accepts the file name as parameter "mp3":
import android.media.MediaPlayer;
r = new Runnable() {
public void run()
{
mp = new MediaPlayer();
mp.setDataSource(parameters.get("mp3"));
mp.prepare();
mp.start();
// Play first 10 seconds
while(mp.getCurrentPosition() <= 10*1000) {
Thread.sleep(1000);
}
mp.stop();
mp.release();
}
};
t = new Thread(r);
t.start();
Works perfect! Last question, how can I submit the time length via parameter?
DeleteYou can use something like this:
Deletelen = Integer.valueOf(parameters.get("length"));
Thanks, works so far. I modified the script for the case, length is not specified, but the script isn't working if not length parameter is specified. What wrong with that?
Deleteimport android.media.MediaPlayer;
r = new Runnable()
{
public void run()
{
mp = new MediaPlayer();
// Play first 10 seconds if length is missing;
len = 10;
mp.setDataSource(parameters.get("mp3"));
mp.prepare();
mp.start();
if (Integer.valueOf(parameters.get("length")) != null) len = Integer.valueOf(parameters.get("length"));
while(mp.getCurrentPosition() <= len*1000) {
Thread.sleep(1000);
}
mp.stop();
mp.release();
}
};
t = new Thread(r);
t.start();
Second question: stopping of the current running MP3 isn't possible I think...
Third question: How can I "wake" the display of the device?
DeleteMany thanks in advance!
That's not possible. You would need Device Administrator permissions which the app does not have.
DeleteChange the following line and the code should work:
Deleteif (parameters.get("length") != null) len = Integer.valueOf(parameters.get("length"));
To stop old mediaplayer instances store them into the server scope and stop old ones before starting a new mediaplayer.
Server scope is used like this:
serverPut(key, object);
serverGet(key);
Thanks - no wake of display :-(
DeleteOH - the problem with the script is: it IS working when length is specified at URL but it just plays the MP3 for ONE second if length is NOT SPECIFIED. Seems something with the initial assignment of the value of 10 to the variable len is wrong....
Hmm... this should work.
DeleteWhat you can try to do is to add a little more error handling:
if (parameters.get("length") != null) {
try {
len = Integer.valueOf(parameters.get("length"));
}
catch(e) { }
}
Thanks - got it. Works now! Great.
DeleteHi Jochen, I am currently struggling with serverPut(key, object); and
DeleteserverGet(key); for killing the running mediaplayer task. May I ask you to give a short example on how to apply that? Sorry for being Noob... Cheers
Hi,
Deletecan we switch to mail (jochen [at] fun2code.de)?
Otherwise we are filling up the comments.
Hi Juergen, cool! Will try ASAP. Thanks! Martin
ReplyDeleteHi, i can't seem to locate the php plugin anywhere. If i click on plug-ins on PAW server I get a timed out message as follows: The server at notavailable.goneo.de is taking too long to respond. The RapidShare link says file not found. Could you tell me where I could get it please. Thanks. Jay
ReplyDeleteUploaded all PAW plugins to Google Drive: http://goo.gl/Rpc0Yu
DeleteThanks Jochen for the quick response. Jay
DeleteI had to update the following two files with the correct directory location, otherwise php doesn't install and will give a file not found error, when trying to run phpinfo.php
ReplyDelete/php_plugin/index.xhtml
from> pluginPath = pawHome + "/html/app/plugins/" + pluginName;
to> pluginPath = pawHome + "/html/app/add_ons/" + pluginName;
/php_plugin/conf/php.ini
from> include_path = ".:/mnt/sdcard/paw/html/app/plugins/php_plugin/conf"
to> include_path = ".:/mnt/sdcard/paw/html/app/add_ons/php_plugin/conf"
Also after extracting the zip to the plugin folder, the php addon did not appear under Add-Ons in the PAW Server.
You can manually install it this way, just replace the ip address to yours.
http://192.168.0.3:8080/app/add_ons/php_plugin/
Now everything works fine. :)
Fahimshakir Freelancer Developer from Delhi-India,You can provide me part time work for Home,Part Time Developer/Freelancer For PHP , WordPress, Magento, Opencart, Shopify, Codeigniter, Website Maintenance in Delhi -india, www.fahimshakir.com
ReplyDeleteThanks - got it. Works now! Great.
ReplyDeleteIt's really good!
ReplyDeleteAnd now I'd like to run php scripts from other directory. What I have to change and in what files (php.ini or some like it)?
i extracted the php.zip into the plugins folder but nothing happened..!! can u give a hand please...thankx..!!
ReplyDeleteMake sure the folder "php_plugin" is located inside the "/sdcard/paw/html/app/plugins" directory.
DeleteIf this is the case, the entry "PHP Setup" should show up inside the "Plugins" menu inside the web application.
Thanks for sharing Information
ReplyDeleteI m also looking for Woocommerce SMS notification plugin for my small business.
Hi Jochen
ReplyDeleteI have a question regarding php_plugin.
As soon as I try to install gdeasy cms or typesetter cms the server test site which appears during the installation process informs of a problem regarding "SCRIPT_NAME or PHP_SELF". I found some hints for this matter on typesetter forum (https://www.typesettercms.com/Forum?show=t359)and php.net but to be honest I have no idea of php and most likely I won't be able to handle it myself. Please help if You have some spare time.
Thanks for the info. This seems to be a PAW bug inside the CGI handler. I'll try to fix that in the next release.
DeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
DeleteThis comment has been removed by the author.
DeleteThis comment has been removed by the author.
ReplyDeleteThis is best PHP tutorial in youtube. you can learn full coding and also the best expamles in here. This the best of learning and earning ways of youtube.
You can the full boston php tutorial.
click here PHP tutorial
for more youtube tutorials
website php tutorial for beginners
Hi All,
ReplyDeleteI have a question I was hoping you could help me with. I have installed paw and the php plugin, but php does not seem to be allowed to write to the tmp folder. I start a session on page1, set up a few session variables, then on page2 where I try to use those variables I get the error
Warning: session_start(): open([PAW_HOME]/tmp/sess_d258d99a71525414b4f1001c3b32da5f, O_RDWR) failed: No such file or directory (2) in /storage/emulated/0/paw/html/welcome.php on line 6
Any ideas? I assumed it was a permissions issue, but the android device I am running paw on is not rooted so I have no way of altering permissions for that folder.
Well, I've installed WAMP and tried the same file. No problem whatsoever.
DeleteChange the file php.ini and replace `[PAW_HOME]` with a real, existing path... for some reason, this part is not parsed and could not get the correct place.
DeleteCan i integrate your library into my android app which is for commercial use
ReplyDeletePlugin doesn't work on ASUS!Is this because of Intel processor?
ReplyDeleteYes, the plugin won't run on Intel hardware.
DeleteWow, nice and interesting article, Thanks for your valuable information and time. it is really helpful to understand and learn for me.
ReplyDeleteIOS Training in chennai|Android Training in chennai
In this post the information is about the PAW development. this blog can helping us to understand for what coming next in PAW development.
ReplyDeletethan you so much for sharing this post.
I just need a local server to run content offline. Don't even need PHP or MySQL. With PAW installed I can easily run content stored locally, but only when connected to my network. It seems this should be possible with PAW, but not finding instructions on how to do it. What am I doing wrong? Or point me to the instructions I missed.
ReplyDeleteThanks!
Nice article thanks for given this information. i hope it useful to many pepole.more php jobs in hyderabad.
ReplyDelete
ReplyDeleteNice and good post. It is very useful for me. Thanks for sharing your valuable information.
PHP Training
PHP Course
PHP Institute
This comment has been removed by the author.
ReplyDeleteThanks for sharing blog.
ReplyDeletePHP Training in gurgaon