All pastes #799188 Raw Edit

Something

public text v1 · immutable
#799188 ·published 2007-11-27 11:56 UTC
rendered paste body
<?php
require_once("conn.php");

if(isset($_GET['threadID'])){
$start = 0;
$limit = 30;
$q = mysql_query("SELECT p . * , h.category, r.rubrik, m.user, m.created_on AS `joined` , m.stad AS city, m.bild AS image, (SELECT COUNT(*) AS num_posts  
FROM forum_posts WHERE author = 1) AS num_posts, (SELECT COUNT(*) FROM guider1 WHERE guider1.authorid = 1 AND guider1.valid = 'ja') AS num_guides
FROM forum_posts AS p
JOIN members AS m ON m.id = p.author
JOIN forum_threads AS t ON t.id = p.belongs
JOIN forum_heads AS h ON t.belongs = h.catid
JOIN forum_rubriker AS r ON r.titlesid = h.belongs
WHERE p.belongs = " .intval($_GET['threadID']). "
AND p.postid > " .intval($_GET['newpost']). "
ORDER BY postid, posted") or die(mysql_error());

$last_post_query = mysql_query("SELECT postid, belongs FROM forum_posts WHERE belongs = " .intval($_GET['threadID']). " ORDER BY postid DESC LIMIT 1")
or exit(mysql_error());
$last_posts = mysql_fetch_assoc($last_post_query);

$thread_info = mysql_query("SELECT p.posted AS created, p.title, p.belongs AS threadid, h.category AS father, r.rubrik AS grandpa
FROM forum_posts AS p
JOIN forum_threads AS t ON t.id = p.belongs
JOIN forum_heads AS h ON t.belongs = h.catid
JOIN forum_rubriker AS r ON r.titlesid = h.belongs
WHERE p.belongs = ". intval($_GET['threadID']) ." AND p.first = 1") or exit(mysql_error());

function protect($what){
	$what = htmlspecialchars(htmlspecialchars($what));
    return $what;
    }

if(mysql_num_rows($q) > 0 || mysql_num_rows($thread_info) > 0){
while($r = mysql_fetch_assoc($q)){
$extra_lank = '';
echo "
<div class=\"post_container\">
<a id=\"post_" .$r['postid']. "\" name=\"post_" .$r['postid']. "\"></a>
	<div class=\"post_left_container\">
			<div class=\"post_userinfo\">
<a href=\"#\" onclick=\"Effect.toggle('post_" .$r['postid']. "_special_info','BLIND'); return false;\"><img src=\"" .$extra_lank. "images/plus.gif\" alt=\"VISA/DÖLJ utökad användarinfo\" 
onclick=\"if(/plus.gif$/.test(this.src)) this.src = '" .$extra_lank. "images/minus.gif'; else this.src = '" .$extra_lank. "images/plus.gif';\" /></a>
				<a href=\"?threadID=1#post_" .$r['postid']. "\" title=\"#post_" .$r['postid']. "\">#" .$r['postid']. "</a>
				<a href=\"/members/wally\" title=\"Gå till wallys presentation\">" .$r['user']. "</a>

				<span style=\"color:green\">Online</span>
			</div>

			<div id=\"post_" .$r['postid']. "_special_info\" style=\"display:none;\">
				<div class=\"special_info\">
				<img src=\"" .$extra_lank. "images/no-picture.png\" alt=\"wally\" />
					<div class=\"special_info_text\">
						<div class=\"special_col\">
							<b>Medlem sedan:</b> ". $r['joined']. "
							<br />
							<br />
							<b>Antal inlägg:</b> ". $r['num_posts'] ."
						</div>
						<div class=\"special_col\">
						<b>Ort:</b> ". $r['city']. "
						<br />
						<br />
						<b>Antal skrivna guider:</b> 4
						</div>

					</div>
				</div>
			</div>
	</div>
	<div class=\"post_right_container\">
			<div class=\"post_content\">
				<div class=\"post_title\">\n<span id=\"title_". $r['postid']. "\">" .htmlspecialchars($r['title']). "</span>
				</div>
				Skrivet: " .$r['posted']. "
				<hr />
<span id=\"edit_". $r['postid']. "\">" .htmlspecialchars($r['content']). "</span>
				<br />
			</div>
		<div class=\"post_tools\">
			<span class=\"link\" onclick=\"alert('För att redigera texten tryck på texten! Detta gäller även rubriker.');\">[Ändra]</span> 
			<a href=\"#message\" onclick=\"answer('1');\" title=\"Svara\">[Svara]</a> 
			<a href=\"?report&amp;postID=" .$r['postid']. "\" title=\"Anmäl inlägg\">[Anmäl]</a> 
			<a href=\"?del_post&amp;postID=" .$r['postid']. "\" onclick=\"if(confirm('Vill du verkligen ta bort inlägget?')) window.location.href=this.href; else return false;\" title=\"Ta bort inlägg\">[Ta bort]</a>

		</div>
	</div>
</div>
<div style='margin:0;padding:0;'><br /></div>";
}
	  //stänger > 0
 }else
 echo "Tomtar!";

}	 //stänger första
else
 echo "Tomt!";
?>























/* Adressen till XML-dokumentet där vi hämtar inläggen */
//var adress = "http://www.guida.nu/nytt/visa_alla/ajax.php?threadID=";
//var bild_url = "http://www.guida.nu/nytt/visa_alla/";
var bild_url = "";
var adress = "ajax_ready.php?threadID=";

var xmlResponse2, xmlRoot2;
var lastpost;
var notify = document.getElementById("notify");
/* the XMLHTTP object för att samarbeta med servern */
var xmlHttp = createXmlHttpRequestObject();

function createXmlHttpRequestObject()
{
//Håller XMLHTTPRequest object
var xmlHttp;
try
{
xmlHttp = new XMLHttpRequest();
}
catch(e)
{
//anta IE6 eller äldre
var XmlHttpVersions = new Array("MSXML2.XMLHTTP.6.0", "MSXML2.XMLHTTP.5.0", "MSXML2.XMLHTTP.4.0", "MSXML2.XMLHTTP.3.0", "MSXML2.XMLHTTP", "Microsoft.XMLHTTP");

//prova varje XmlHttp version tills en funkar
for (var i = 0; i<XmlHttpVersions.length && !xmlHttp; i++)
{
try
{
//Försök skapa en XMLHttpRequest object
xmlHttp = new ActiveXObject(XmlHttpVersions[i]);
}
catch (e){}
}
}
//returnera det skapade objektet eller visa felmeddelande
if(!xmlHttp)
alert("Error creating the XMLHttpRequest object");
else
return xmlHttp;
}

function getnewposts(threadID){

if(xmlHttp)
{
try
{
 xmlHttp.open("GET", adress + encodeURIComponent(threadID) + "&newpost=" + encodeURIComponent(last_post));
xmlHttp.onreadystatechange = handleRequestStatusChange;  //Hantera svar
xmlHttp.send(null); //skicka inget
}
catch(e){}
}
}

function handleRequestStatusChange(){
 var target = document.getElementById("ajax_forum_start");
 var notify = document.getElementById("notify");
if(xmlHttp.readyState == 4)
{
notify.innerHTML = '';
if(xmlHttp.status == 200 )
{
xmlResponse2 = xmlHttp.responseXML;
xmlRoot2 = xmlResponse2.documentElement;

if (xmlRoot2)
{
  lastpostArray = xmlRoot2.getElementsByTagName("lastpost");
  if (lastpostArray)
  {
    lastpost = lastpostArray.item(0).firstChild.data;
  }
  else
  {
    alert("lastpostArray finns inte")
  }
}
else
{
  alert("xmlRoot2 finns inte")
}


//rada upp... allt

//forumsdata
	if(lastpost > last_post){
		try
		{
		handleServerResponse();
		}
		catch(e)
		{
		alert(e.name + " / " + e.message); 
		}
	}else if(lastpost == last_post){
        notify.innerHTML = "Inga nya inlägg!";
		}
}
	else
	alert("Error fetching the data:\n" + xmlHttp.statusText + "\n" + xmlHttp.status);
}else if(xmlHttp.readyState == 1 || xmlHttp.readyState == 2 || xmlHttp.readyState == 3)
{
	target.innerHTML = "<img src=\"" + bild_url + "images/load2.gif\" alt=\"Laddar\" style=\"border:none;\">";
}


}


function handleServerResponse(){
var html = "";

var xmlResponse = xmlHttp.responseText;
html = xmlResponse;
var target = document.getElementById("ajax_forum_start");
target.innerHTML = html;

//Gör så att det senaste inlägget är lastpost
last_post = lastpost;
}

function addpost(postid){
if(!xmlHttp)
alert("No XMLHttpRequest object created! Please update to a more modern browser like firefox.\n You can get it at www.getfirefox.com");
else{
	xmlHttp.open("GET", "makepost.php?threadID=" + encodeURIComponent(postid));
	xmlHttp.onreadystatechange = handlemakenewpost;
	xmlHttp.send(null);
	}
}

function handlemakenewpost(){
	if(xmlHttp.readyState == 4){
		if(xmlHttp.status == 200){
		    if(xmlHttp.responseText == "Ok")
			alert("Ditt inlägg skapades!\nProva nu att hämta nya inlägg. Det gör du längst ner!");
		    else
		    alert("Fel");
		}else
		alert("Something got wrong!\n" + xmlHttp.statusText);
	}
}