This is a discussion on Cant figure out ajax/php problem. within the alt.comp.lang.php forums, part of the PHP Programming Forums category; Here's my issue: I have an instant messenger type feature for my site, its basically an ajax IM feature. ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Here's my issue: I have an instant messenger type feature for my site, its
basically an ajax IM feature. I run with a mysql backend on the site, i have a div on my main page that runs a javascript timer to load the php page via ajax every 15 seconds which checks the "pinguser" table to see if the user has any chat requests, then echoes them to a div on the page. what i REALLY want to do is have the ajax page see if there is a ping for the user, and if so, pop up a javascript alert or somethign to let the user know he has a chat request. I tried just echo'ing the javascript to do an alert(); , or even a window.open. It works if i just run the script by itself, but when it runs in the div on my main page, i get the rest of the feedback (it displays the message i echo'ed that said "youve got mail", but the alert box doesnt pop up. Anyone have any idea what Im doing wrong? I've been googling for 3 days straight and going crazy, never thought to check the groups before. |
|
|||
|
"John Doe" <dod@dad.cog> wrote in message news:02783240$0$29357$c3e8da3@news.astraweb.com... > Here's my issue: I have an instant messenger type feature for my site, its > basically an ajax IM feature. I run with a mysql backend on the site, i > have a div on my main page that runs a javascript timer to load the php > page via ajax every 15 seconds which checks the "pinguser" table to see if > the user has any chat requests, then echoes them to a div on the page. > what i REALLY want to do is have the ajax page see if there is a ping for > the user, and if so, pop up a javascript alert or somethign to let the > user know he has a chat request. I tried just echo'ing the javascript to > do an alert(); , or even a window.open. It works if i just run the script > by itself, but when it runs in the div on my main page, i get the rest of > the feedback (it displays the message i echo'ed that said "youve got > mail", but the alert box doesnt pop up. Anyone have any idea what Im doing > wrong? I've been googling for 3 days straight and going crazy, never > thought to check the groups before. it does no one any good to ficticously guess at what your problem is, and feckless to divine a solution. here is what i can say...this is NOT a php question. further, if you just want to load the html/page again, you don't need javascript to do that! you need to isolate functionality and use xml to communicate messages to/from the server, and then use javascript to update only the pertenant area(s) or the current page in the browser. either ask your *javascript* question in a *javascript* newsgroup, or get flak here. either way, no one will do shit for you until you post sample code. |
|
|||
|
<etbalex@gmail.com> wrote in message news:1193325679.155875.118250@d55g2000hsg.googlegr oups.com... > Why not try another Div for messages or alerts, whenever you need to > display an alert make the DIV visible via CSS. > Well I have a DIV that messages display in that is refreshed via ajax every 5 seconds or so. basically, when someone sends a chat request, it just adds a record to a mysql database, then the ajax that refreshes that DIV on my page checks the database to see if there are any new chat requests. Unfortunately I can't seem to get any type of javascript to work when I call it in my PHP script that is being called by AJAX. (basically, the ajax loads up a refresh.php that simply checks the database, then echoes a message back to the div that says "Chat request incoming from blah blah blah). When i try to embedd some javascript into the page to do a quick alert("Youve Got Mail") the alert doesnt pop up, even though the rest of the script (the php part) executes correctly. If i run the PHP script by itself, the alert does pop up. I just dont know a whole lot about when javascript will work and when it won't, i am kind of baffled by the problem. Its just weird because it works when i run the update script seperately, but not when run as an AJAX call. |
|
|||
|
Ok, seriously, without code, we're not going to be able to help at all.
~A! John Doe took the time to say: > <etbalex@gmail.com> wrote in message > news:1193325679.155875.118250@d55g2000hsg.googlegr oups.com... >> Why not try another Div for messages or alerts, whenever you need to >> display an alert make the DIV visible via CSS. >> > > Well I have a DIV that messages display in that is refreshed via ajax every > 5 seconds or so. basically, when someone sends a chat request, it just adds > a record to a mysql database, then the ajax that refreshes that DIV on my > page checks the database to see if there are any new chat requests. > Unfortunately I can't seem to get any type of javascript to work when I call > it in my PHP script that is being called by AJAX. (basically, the ajax > loads up a refresh.php that simply checks the database, then echoes a > message back to the div that says "Chat request incoming from blah blah > blah). When i try to embedd some javascript into the page to do a quick > alert("Youve Got Mail") the alert doesnt pop up, even though the rest of the > script (the php part) executes correctly. If i run the PHP script by itself, > the alert does pop up. I just dont know a whole lot about when javascript > will work and when it won't, i am kind of baffled by the problem. Its just > weird because it works when i run the update script seperately, but not when > run as an AJAX call. > > |
|
|||
|
On Oct 22, 4:37 pm, "Steve" <no....@example.com> wrote:
> "John Doe" <d...@dad.cog> wrote in message > > news:02783240$0$29357$c3e8da3@news.astraweb.com... > > > Here's my issue: I have an instant messenger type feature for my site, its > > basically an ajax IM feature. I run with a mysql backend on the site, i > > have a div on my main page that runs a javascript timer to load the php > > page via ajax every 15 seconds which checks the "pinguser" table to see if > > the user has any chat requests, then echoes them to a div on the page. > > what i REALLY want to do is have the ajax page see if there is a ping for > > the user, and if so, pop up a javascript alert or somethign to let the > > user know he has a chat request. I tried just echo'ing the javascript to > > do an alert(); , or even a window.open. It works if i just run the script > > by itself, but when it runs in the div on my main page, i get the rest of > > the feedback (it displays the message i echo'ed that said "youve got > > mail", but the alert box doesnt pop up. Anyone have any idea what Im doing > > wrong? I've been googling for 3 days straight and going crazy, never > > thought to check the groups before. > > it does no one any good to ficticously guess at what your problem is, and > feckless to divine a solution. > > here is what i can say...this is NOT a php question. further, if you just > want to load the html/page again, you don't need javascript to do that! you > need to isolate functionality and use xml to communicate messages to/from > the server, and then use javascript to update only the pertenant area(s) or > the current page in the browser. > > either ask your *javascript* question in a *javascript* newsgroup, or get > flak here. either way, no one will do shit for you until you post sample > code. John, assuming you're using 'prototype' for your AJAX, it has a "evalScripts: true" parameter - have you set this? If not, you may be running into the same problem that this parameter tries to deal with. Either way, I would suggest converting your code to use prototype. You can then call your <div> content in a single line of code, and not have to worry about what's going on in the background too much. Rob. |