Controlling an arduino through wifi?

I have one idea that I know is possible, but I am looking for a more simple solution if possible. I want to control an arduino through a web interface. For example, an iPhone or netbook would scan for a wireless network. If would see one called Arduino that it could connect to. Once connected the only web page available is what the wifi server is serving. The webpage controls the arduino - for example, controlling the color of an rgb led.

Right now my plan is to get a fonera wireless router because it only need 6V and it has a serial port. Also OpenWRT can be installed so I can run apache and a webserver on it. Using phhserial I can have a webpage talk to the arduino through serial.

What I would like is to get rid of the router. A wifi shield that attaches tot eh arduino would be perfect. But then the arduino needs to be a wireless AP and it needs serve webpages. WiShield like it might work - however can you make the arduino an access point. Can you make it force what webpage shows up when someone opens a browser? If so any code examples out there?

You basically need to have a PC or netbook connected to the arduino. The PC will have the web page that is designed to interact with the arduino threw USB. You will have to have a router connected to the PC or at least a wireless card in it. I don't see any way around keeping the arduino interfaced with a full PC. The arduino itself just doesn't have the power or the resources to support running even the most basic circa 1994 web page.

You could easily force a certain web page to show up. Try googling various hot spot providers and see what they use. Most places that offer wifi have some sort of software that is used to verify a user before allowing them to connect. It forces a page to show up on the browser.

Well, the WiShield support ad-hoc. But then the person connecting has to know the Arduino's ip address.

Hmm, I will probably have to have a router. Actually, as long as I can run a web server on the router I can make it work. It doesn't have to be a router that has a serial port. I could put a WiShield on then have a redirect on the router. A little more money to do it that way but it would be simple with no extra coding needed on the web server.

First off, if you want to use WiFi, you need to find a WiFi shield; I don't have my bookmarks handy, but I know that there is one company that is making one. Esssentially, it is the same thing as an ethernet shield, only wireless (heck, it may even use the same ethernet shield library):

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1241939343 http://www.cutedigi.com/product_info.php?products_id=4237

Then, you need to set up a simple web server on the Arduino - if you want more complexity (images, better looking pages, etc - you might also read them from an SD card or something):

http://arduino.cc/en/Tutorial/WebServer http://marcoramilli.blogspot.com/2009/08/arduino-web-server.html

More can be found with a google search, of course.

From there, it is just coding - if you need something more complex, though, then mike's answer is probably the direction you would have to go in...