Jump to content

Recommended Posts

Is there a way to stop the page from scrolling to the top on refresh? Here is my chatroom:

 

chatlog.php

<html>
<head>
<title></title>
<style type="text/css" media="screen">
/*<![CDATA[*/
@import url(global.css); 
/*]]>*/
</style>
</head>
<body>

<?php

include "connect.php";

$getnummessages="SELECT COUNT(*) as messagecount from chatmessages";

$getnummessages2=mysql_query($getnummessages) or die("blah");

$getnummessages3= mysql_result($getnummessages2, 0);

if($getnummessages3>10000000)

{

   $startrow=$getmessages3-20;

}

else

{

  $startrow=0;

}

$getmsg="SELECT name, message from chatmessages order by postime DESC limit $startrow,$getnummessages3";

$getmsg2=mysql_query($getmsg) or die(mysql_error());

while($getmsg3=mysql_fetch_array($getmsg2))

{
$message=' ';
  $message=Smiley($message); //Smiley faces
  $getmsg3['message'] = nl2br($getmsg3['message']); //includes line breaks in messages
  $getmsg3['message'] = wordwrap($getmsg3['message'],170,'<br />',true);

   print "<font color='teal'><b>$getmsg3[name]:</b></font> $getmsg3[message]<br>";



}



function Smiley($texttoreplace)

{

    $smilies=array( 

    

    

    '' => "<img src='images/smile.gif'>",

    ':blush' =>"<img src='images/blush.gif'>",

    ':angry' =>"<img src='images/angry.gif'>",

    ''=>     "<img src='images/shocked.gif'>",  

    'fuck'=>"$#$%",

    'Fuck'=>"&$#@"

  



    );



    $texttoreplace=str_replace(array_keys($smilies), array_values($smilies), $texttoreplace);

    return $texttoreplace;

}

?>

<script>

  setTimeout("window.location.replace('chatlog.php')",1000);



</script>

</body>
</html>

 

submit

<?php

session_start();

?>

<html>
<head>
<title></title>
<style type="text/css" media="screen">
/*<![CDATA[*/
@import url(global.css); 
/*]]>*/
</style>
</head>
<body>

<?php

include "connect.php";

if(isset($_POST['submit'])) //if submit button push has been detected

{

   $message= nl2br($_POST['message']);

   $name=$_SESSION['userName'];

   if(strlen($message)<1)

   {

      print "You did not input a message";

   }

   else if(strlen($name)<1)

   {

      print "You are not logged in. Please log in.";

   }

   else

   {

      $message=strip_tags($message);

      $IP=$_SERVER["REMOTE_ADDR"]; //grabs poster's IP

      $checkforbanned="SELECT IP from ipbans where IP='$IP'";

      $checkforbanned2=mysql_query($checkforbanned) or die("Could not check for banned IPS");

      if(mysql_num_rows($checkforbanned2)>0) //IP is in the banned list

      {

         print "Your IP is banned from posting. Please contact administration.";

      }

      else

      {

         $thedate = date("U"); //grab date and time of the post

         $insertmessage="INSERT into chatmessages (name,IP,postime,message) values('$name','$IP','$thedate','$message')";

         mysql_query($insertmessage) or die("Could not insert message");

    



      }

   }



      

}

print "<form action='submit.php' method='post' name='form'>";

//print "<strong>Your name:</strong><br>"; not needed

//print "<input type='text' name='name' size='20'><br>"; not needed

print "<strong>Your message:</strong><br>";

print "<textarea name='message' cols='40' rows='4'></textarea><br>";

print "<a onClick=\"addSmiley('')\"><img src='images/smile.gif'></a> "; //replace images/smile.gif with the relative path of your smiley

print "<a onClick=\"addSmiley('')\"><img src='images/sad.gif'></a> ";

print "<a onClick=\"addSmiley('')\"><img src='images/wink.gif'></a> ";

print "<input type='submit' name='submit' value='submit'></form>";

print "<script language=\"Java Script\" type=\"text/javascript\">\n";

print "function addSmiley(textToAdd)\n";

print "{\n";

print "document.form.message.value += textToAdd;";

print "document.form.message.focus();\n";

print "}\n";

print "</script>\n";

print "<br><br>";



?> 
</body>
</html>

 

chatframe

<?php

session_start();

if(!isset($_SESSION['loggedIn'])) {
header("Location: login.php");
}

?>

<html>
<head>
<title>Sailor Moon RPG - Battle Chat</title>
<style type="text/css" media="screen">
/*<![CDATA[*/
@import url(global.css); 
/*]]>*/
</style>
</head>
<body>
<!-- HEADER -->
<h1 class="logo">Sailor Moon RPG</h1>
<!-- /HEADER -->
<?php include("topnav.php"); ?>
<div id="main">
<?php include("includes/log.php"); ?>
<?php include("mainnav.php"); ?>
<h1>Sailor Moon RPG - Battle Chat</h1>
<?php

print "<table width=80%><tr><td><iframe src='chatlog.php'  name='chatlogframe' width='80%' height='400'></iframe></td></tr>";

print "<tr><td><iframe src='submit.php' width='80%' height='250' frameborder='0' class='message'></iframe></td></tr></table>";

?>
</div>
<?php include("bottomnav.php"); ?><!-- FOOTER -->
<!-- FOOTER -->
<div id="footer_wrapper">
<div id="footer">
<p>Sailor Moon and all characters
are<br /> 
trademarks of Naoko Takeuchi.</p>
<p>Copyright © 2009 Liz Kula. All rights reserved.<br />
A product of <a href="#" target="_blank">Web Designs By Liz</a> systems.</p>
<div id="foot-nav">
<ul>
<li><a href="http://validator.w3.org/check?uri=http://webdesignsbyliz.com/digital/index.php" target="_blank"><img src="http://www.w3.org/Icons/valid-xhtml10-blue" alt="Valid XHTML 1.0 Transitional" height="31" width="88" /></a></li>
<li><a href="http://jigsaw.w3.org/css-validator/validator?uri=http://webdesignsbyliz.com/digital/global.css" target="_blank"><img class="c2" src="http://jigsaw.w3.org/css-validator/images/vcss-blue" alt="Valid CSS!" /></a></li>
</ul>
</div>
</div>
</div>
<!-- /FOOTER -->
</body>
</html>

 

Is this possible?

I think I have tried this before, but it showed the scroll each time. What I would like to do is when the page refreshes, for it not to scroll back up to the top, but stay wherever the user has it. Say the user is scrolling down to read something another user typed previously. Every time the page refreshes, the page scrolls back up to the top and the user cannot read what they are trying to read. Does this make sense? Does anyone know if what I'm trying to do is possible?

That's happening because the page needs to load all the images and such on the page before that function is called. jQuery has a way around this..

 

Ex:

 

 $(document).ready(function(){
  //Code here
}

 

Try jQuery.

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.