Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Interaction with pictures or files and with self photo, made with php(programming language)

1 view
Skip to first unread message

He

unread,
Oct 15, 2021, 3:31:45 AM10/15/21
to
C:\Users\v\Documents\talking>dir
Volume in drive C is Windows
Volume Serial Number is A8A5-1122

Directory of C:\Users\v\Documents\talking

28.09.2021 14:45 <DIR> .
28.09.2021 14:45 <DIR> ..
25.09.2021 01:04 5 749 data.php
25.09.2021 01:00 562 findlastmdate.php
25.09.2021 01:01 211 func.php
25.09.2021 01:02 1 201 ilist.php
28.09.2021 01:21 5 044 index.php
27.09.2021 05:37 17 069 index2.php
25.09.2021 01:04 382 renewing.php
7 File(s) 30 218 bytes
2 Dir(s) 449 205 985 280 bytes free

C:\Users\v\Documents\talking>type *.*

data.php


<?php

class Dobj {
function getNameOfClass()
{
return static::class;
}
}

class Data {

var $dtables;

function gettime() {
return date("d.m.Y H:i:s");
}

function loadobjecttables() {
$dtables = array();
foreach (glob("*.dat") as $file) {
$path_parts = pathinfo($file);
if(!class_exists($path_parts['filename'])) {
continue;
}
$file1 = file_get_contents($file, true);
$dtables[] = unserialize($file1);
}
$this->dtables=$dtables;
}

function deleteotable($otabname) {
if (file_exists($otabname.".dat")) {
unlink($otabname.".dat");
}
$this->loadobjecttables();
}

function insertobject($obj) {
$this->loadobjecttables();
$oclass=$obj->getNameOfClass();
$tabls=$this->dtables;
$oarridx=-1;
for($i=0; $i<count($tabls); $i++) {
if($tabls[$i][0]->getNameOfClass()==$oclass) {
$oarridx=$i;
}
}
if($oarridx==-1) return false;
$tabls[$oarridx][]=$obj;
unlink($oclass.".dat");
$b=serialize($tabls[$oarridx]);
$fh = fopen($oclass.".dat", "a");
fwrite($fh, $b);
fclose($fh);
chmod($oclass.".dat", 0700);
}


function saveobjecttables() {
$tabls=$this->dtables;
for($i=0; $i<count($tabls); $i++) {
$oc=$tabls[$i][0]->getNameOfClass();
if (file_exists($oc.".dat")) {
unlink($oc.".dat");
}
$b=serialize($tabls[$i]);
$fh = fopen($oc.".dat", "a");
fwrite($fh, $b);
fclose($fh);
chmod($oc.".dat", 0700);
}
return true;
}

function saveobjecttable($objcl) {
$tabls=$this->dtables;
$obclindex=-1;
for($i=0; $i<count($tabls); $i++) {
if($tabls[$i][0]->getNameOfClass()==$objcl) {
$obclindex=$i;
break;
}
}
if (file_exists($objcl.".dat")) {
unlink($objcl.".dat");
}
$b=serialize($tabls[$obclindex]);
$fh = fopen($objcl.".dat", "a");
fwrite($fh, $b);
fclose($fh);
chmod($objcl.".dat", 0700);
return true;
}

function makearrayunique($array){
$duplicate_keys = array();
$tmp = array();

foreach ($array as $key => $val){
if (is_object($val))
$val = (array)$val;

if (!in_array($val, $tmp))
$tmp[] = $val;
else $duplicate_keys[] = $key;
}

foreach ($duplicate_keys as $key)
unset($array[$key]);
return $array;
}

function deleteduplicates() {
$ob=$this->dtables;
for($i=0; $i<count($ob); $i++) {
$o12=$this->makearrayunique($ob[$i]);
$ob[$i]=$o12;
}
$this->saveobjecttables();
}

function deleteduplicatescl($objcl) {
$ob=$this->dtables;
$obclindex=-1;
for($i=0; $i<count($ob); $i++) {
if($ob[$i][0]->getNameOfClass()==$objcl) {
$obclindex=$i;
break;
}
}
$o12=$this->makearrayunique($ob[$obclindex]);
$ob[$obclindex]=$o12;
$this->dtables=$ob;
$this->saveobjecttable($objcl);
}



function objectClassestoarray($objectA,
$objectB) {
$new_object = array();

foreach($objectA as $property => $value) {
$new_object[$property]=$value;
}

foreach($objectB as $property => $value) {
$new_object[$property]=$value;
}

return $new_object;
}


function query($query) {
$this->loadobjecttables();
$ovars=array();
$objects=$this->dtables;
for($i=0; $i<count($objects); $i++) {
$ovars[]=array_keys(get_object_vars($objects[$i][0]));
}
$mches=array();
$results=null;
$exitf=false;

for($i=0; $i<count($objects); $i++) {
if($exitf) break;
for($j=0; $j<count($ovars); $j++) {
if($exitf) break;
if(!class_exists($objects[$i][0]->getNameOfClass())) continue;
if(preg_match("/^get \* from ".$objects[$i][0]->getNameOfClass().";$/",$query)) {
$objectsList = [];
foreach ($objects[$i] as $obj) {
$objectsList[] = (array)$obj;
}
return $objectsList;
$exitf=true;
}
}
}

for($i=0; $i<count($objects); $i++) {
if($exitf) break;
for($j=0; $j<count($ovars); $j++) {
if($exitf) break;
if(!class_exists($objects[$i][0]->getNameOfClass())) continue;
if(preg_match("/^get ".$ovars[$i][$j]." from ".$objects[$i][0]->getNameOfClass().";$/",$query)) {
return array_column($objects[$i], $ovars[$i][$j]);
$exitf=true;
}
}
}

$outp=array();
for($i=0; $i<count($objects); $i++) {
if($exitf) break;
for($j=0; $j<count($ovars[$i]); $j++) {
if($exitf) break;
for($k=0; $k<count($objects); $k++) {
if($exitf) break;
for($l=0; $l<count($ovars[$k]); $l++) {
if($exitf) break;
if(!class_exists($objects[$i][0]->getNameOfClass())) continue;
if(!class_exists($objects[$k][0]->getNameOfClass())) continue;

if(preg_match("/^get \* from ".$objects[$i][0]->getNameOfClass()." join ".$objects[$k][0]->getNameOfClass().
" on \(".$objects[$i][0]->getNameOfClass()."\.".$ovars[$i][$j]."\=".$objects[$k][0]->getNameOfClass().
"\.".$ovars[$k][$l]."\);$/",$query)) {
for($ii=0; $ii<count($objects[$i]); $ii++) {
for($ii2=0; $ii2<count($objects[$k]);$ii2++) {
if($objects[$i][$ii]->{$ovars[$i][$j]}==$objects[$k][$ii2]->{$ovars[$k][$l]}) {
$oobj = $this->objectClassestoarray($objects[$i][$ii], $objects[$k][$ii2]);
$outp[]=$oobj;
}
}
}
$exitf=true;
}
}
}
}
}

for($k=0; $k<count($objects); $k++) {
if($exitf) break;
for($l=0; $l<count($ovars[$k]); $l++) {
if($exitf) break;
for($l2=0; $l2<count($ovars[$k]); $l2++) {
if($exitf) break;
if(!class_exists($objects[$k][0]->getNameOfClass()))
continue;

if(preg_match("/^get \* from ".$objects[$k][0]->getNameOfClass()." where ".$ovars[$k][$l]."\=(.*) and ".$ovars[$k][$l2]."\=(.*);$/",$query, $matches)) {
for($ii2=0;
$ii2<count($objects[$k]); $ii2++) {

if($objects[$k][$ii2]->{$ovars[$k][$l]}==$matches[1]&&$objects[$k][$ii2]->{$ovars[$k][$l2]}==$matches[2]) {

$oobj = (array)$objects[$k][$ii2];

$outp[]=$oobj;
}
}
$exitf=true;
}
}
}
}


for($k=0; $k<count($objects); $k++) {
if($exitf) break;
for($l=0; $l<count($ovars[$k]); $l++) {
if($exitf) break;
if(!class_exists($objects[$k][0]->getNameOfClass())) continue;
if(preg_match("/^get \* from ".$objects[$k][0]->getNameOfClass()." where ".$ovars[$k][$l]."\=(.*);$/",$query, $matches)) {
for($ii2=0; $ii2<count($objects[$k]); $ii2++) {
if($objects[$k][$ii2]->{$ovars[$k][$l]}==$matches[1]) {
$oobj = (array)$objects[$k][$ii2];
$outp[]=$oobj;
}
}
$exitf=true;
}
}
}

if(count($outp)>0) {
return $outp;
}


return $mches;
}

}

?>
findlastmdate.php


<?php

include("../data.php");

class Msg extends Dbobj{
var $text;
}

$myd=new Data();

$myd->loadobjecttables();
$texists=false;
$t1=$myd->dtables;

$mdates=array();

for($i=0; $i<count($t1);$i++) {
if($t1[$i][0]->getNameOfClass()=="Msg") {
$texists=true;
break;
}
}

if($texists==true) {
$t2=$mydb->query("get text from Msg;");
for($i=0; $i<count($t2);$i++) {
$date12=date("d.m.Y H:i:s", strtotime(substr($t2[$i], 0, 19)));
$d_start = new DateTime($date12);
$mdates[]=$d_start;
}
echo $mdates[count($mdates)-1]->format('d.m.Y H:i:s');;
} else {
echo "";
}

?>
func.php


<?php


function rrmdir($dir) {
$files = array_diff(scandir($dir), array('.','..'));
foreach ($files as $file) {
(is_dir("$dir/$file")) ? rrmdir("$dir/$file") : unlink("$dir/$file");
}
return rmdir($dir);
}


?>
ilist.php


<?php

include("../data.php");

class Msg extends Dobj{
var $text;
}

class Inimene extends Dobj{
var $name;
var $time;
var $dpic;
}


$myd=new Data();

$myd->loadobjecttables();
$texists=false;
$t1=$myd->dtables;

$ilist=array();

$itidx=-1;
for($i=0; $i<count($t1);$i++) {
if($t1[$i][0]->getNameOfClass()=="Inimene") {
$texists=true;
$itidx=$i;
break;
}
}

$newi=array();

if($itidx>-1) {
for($i=0; $i<count($t1[$itidx]);$i++) {
$date12=date("d.m.Y H:i:s", strtotime($t1[$itidx][$i]->time));
$dtime = new DateTime($date12);

$datenow=date( 'd.m.Y H:i:s', strtotime( '+3 hour' , strtotime("now") ));
$dtimenow = new DateTime($datenow);

$diff = $dtimenow->getTimestamp() - $dtime->getTimestamp();
if($diff<60*15) {
$newi[]=$t1[$itidx][$i];
} else {
}
}
if(count($newi)==0) {
unset($t1[$itidx]);
unlink("Inimene.dat");
} else {
$t1[$itidx]=$newi;
$myd->dtables=$t1;
$myd->saveobjecttable("Inimene");
}
}

if($texists==true) {
$t2=$myd->query("get name from Inimene;");
for($i=0; $i<count($t2);$i++) {
$ilist[]=$t2[$i];
}
} else {

}

$result = array_unique($ilist);
$List = implode(', ', $result);
if(substr($List,strlen($List)-2, 2)==", ") {
$List=substr($List, 0, strlen($List)-2);
}
echo $List;

?>
index.php

<!DOCTYPE html>
<html>
<head>
<link rel="icon" style="width:15px; height=15px; background-color: #76FEFF; color: #76FEFF;"/>

<style>
input {
color: #76FEFF;
}

body {
background-image: url("img.jpg");

background-repeat: repeat;
background-size: 100%;

/*
background-color: lightgreen;
*/
}

.main12 {
text-decoration:none;
color: #76FEFF;
font-weight: bold;
background-color: white;
border: 1px solid white;
border-radius: 10px 10px;
padding: 5px;
font-weight:bold;
}
.main1 {
text-decoration:none;
color: white;
border-radius: 5px 5px;
padding: 5px;
font-weight:bold;
width:775px;
}

.main12 {
text-decoration:none;
color: #76FEFF;
border-radius: 5px 5px;
padding: 5px;
font-weight:bold;
vertical-align: middle;
width:535px;
}

.main2 {
color: white;
}

.main3 {
text-decoration:none;
color: #76FEFF;
font-weight: bold;
background-color: white;
border: 1px solid white;
border-radius: 5px 5px;
padding: 5px;
font-weight:bold;
width:100px;
display:block;

}

.w1 {
color: white;
}
.w2 {
color: white;
display:inline-block;
}
.pwd {
color: #76FEFF;
display:inline-block;
}

.w21 {
color: white;
display:block;
}

</style>
</head>
<body>
<h1 class="main1">
</h1>
<h1 class="main12" style="line-height: 45px;">W e l c o m e . T e r e t u l e m a s t .</h1>
<h1 class="main1">
</h1>

<?php

include("func.php");
include("data.php");

class Password extends Dobj{
var $content;
}


$dirs = array_filter(glob('*'), 'is_dir');

$cannotcreate=false;


if(count($dirs)>60) {
$cannotcreate=true;
}


if(!empty($_POST['rname'])&&($_POST['rname']!=" ")&&!empty($_POST['rname'])&$cannotcreate==false) {
$_POST['rname'] = strip_tags($_POST['rname']);
$_POST['rname'] = str_replace(' ', 'space21326', $_POST['rname']);
$_POST['rname'] = str_replace(',', 'comma21326', $_POST['rname']);
$_POST['rname'] = str_replace('?', 'q21326', $_POST['rname']);
$_POST['rname'] = str_replace('\'', 'ukom21326', $_POST['rname']);
mkdir($_POST['rname'], 0755);


if(!empty($_POST['password'])&&$_POST['password']!="") {
$myd=new Data();
$tabls=array();
$pwd1=new Password();
$pwd1->content=$_POST['password'];
$pwdt=array();
$pwdt[]=$pwd1;
$tabls[]=$pwdt;
$myd->dtables=$tabls;
$myd->saveobjecttable("Password");


$file = 'Password.dat';
$newfile = 'Password.dat';
if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}
chmod($_POST['rname'].'/'.$newfile, 0700);


unlink("Password.dat");
}


$file = 'index2.php';
$newfile = 'index.php';
if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}
chmod($_POST['rname'].'/'.$newfile, 0744);

$file = 'renewing.php';
$newfile = 'renewing.php';

if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}

chmod($_POST['rname'].'/'.$newfile, 0744);

$file = 'ilist.php';
$newfile = 'ilist.php';

if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}

chmod($_POST['rname'].'/'.$newfile, 0744);

$file = 'findlastmdate.php';
$newfile = 'findlastmdate.php';

if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}

chmod($_POST['rname'].'/'.$newfile, 0744);

$file = 'func.php';
$newfile = 'func.php';

if (!copy($file, $_POST['rname'].'/'.$newfile)) {
echo "Error\n";
}

chmod($_POST['rname'].'/'.$newfile, 0744);

}

$dirs = array_filter(glob('*'), 'is_dir');

if(count($dirs)>0) {
echo "<h2 class='main2'>Topics</h2>";
}

$dirs = array_filter(glob('*'), 'is_dir');

foreach ($dirs as $file) {
$file2= str_replace('space21326', '&nbsp;', $file);
$file2= str_replace('comma21326', ',', $file2);
$file2= str_replace('q21326', '?', $file2);
$file2= str_replace('ukom21326', '\'', $file2);
if($file=="files") continue;

$dir1='//'.$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
$output = file_get_contents('http:'.$dir1.$file.'/findlastmdate.php');
if($output!="") {
$date12=date("d.m.Y H:i:s", strtotime($output));
$d_start = new DateTime($date12);
$currentdate = date('d.m.Y H:i:s', time());
$d_end = new DateTime($currentdate);
$diff = $d_start->diff($d_end);
$delete1=false;
if(!($diff->format('%d')<1000||$diff->format('%d')==1000&&$diff->format('%h')<1))
$delete1=true;
if($delete1) {
rrmdir('/'.$file);
continue;
}
}
echo '<a class="main12" href=\'http:'.$dir1.$file.'\'>'.$file2.'</a>';
echo "<p></p>";
$path_parts = pathinfo($file.'/Msg.dat');
if(!class_exists($path_parts['filename'])) {
continue;
}
}


?>
<p style="height:50px;"> </p>

<form method="POST">
<p class="w2">
Topic:
</p>
<input name="rname"/>
<p class="w21">
Password(optional)
</p>
<input class="pwd" name="password" type="password"/>
<p class="w">
</p>
<input type="submit" class="main3" value="Create"/>
</form>
<p class="w1" style="color: #j3k4f8; font-weight: bold;">
To access password protected topic: /index.php?code=Password</p>
<p class="w1" style="color: #j3k4f8; font-weight: bold;">Attention: Please try to behave, while in talkrooms.....</p>
<p></p>
<p></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p class="w1"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>

</body>
</html>


index2.php


<!DOCTYPE html>
<html>
<head>
<link rel="icon" style="width:15px; height=15px; background-color: #76FEFF; color: #76FEFF;"/>

<style>
input {
color: #76FEFF;
}

body {
background-color: #76FEFF;
}

.file1 {
text-decoration: none;
color: #76FEFF;
}

.main1 {
text-decoration:none;
color: #76FEFF;
background-color: white;
border: 1px solid white;
border-radius: 5px 5px;
padding: 5px;
font-weight:bold;
width:100px;
}

.main2 {
color: white;
margin-top:-15px;
}

.main3 {
text-decoration:none;
color: #76FEFF;
background-color: white;
border: 1px solid white;
border-radius: 5px 5px;
padding: 5px;
font-weight:bold;
width:100px;
}

.main4 {
color: white;
width: 140px;
}

.main5 {
color: white;
margin-top:-15px;
margin-bottom:1px;
}
.main6 {
color: white;
margin-top:15px;
width:600px;
overflow-wrap: break-word;
}
.main7 {
margin-bottom:1px;
}

.text1 {
color: #76FEFF;
width: 538px;
height: 29px;
margin-top:-15px;
overflow-wrap: break-word;
}

textarea {
color: black;
}
form {
line-height: 1.4;
}

.a1 {
line-height: 1.4;
width: 561px;
height: 357px;
overflow-y: auto;
overflow-x: hidden;
background-color: white;
overflow-wrap: break-word;
color: #76FEFF;
}

.a1 p {
height:0.001%;
margin-bottom:-15px;
}
.nameslist {
margin-bottom:15px;
}
</style>
<script>
function imgError(image) {
image.onerror = "";
image.src = "../noimage.jpg";
image.style="background-color: #848587;";
image.width="40px";
image.height="40px";
return true;
}
</script>
</head>
<body onload="a00000()">

<?php

include("func.php");


$size = 0;

$files = glob('uploads/*.*');
usort($files, function($a, $b) {
return filemtime($a) < filemtime($b);
});
$idx=0;

$files = array_reverse($files, true);

if(is_dir("uploads")) {
foreach($files as $file) {
if($idx==count($files)-1) break;
$filesize = filesize($file);
$size+=$filesize;
$idx++;
}
$idx=0;
if($size>5000000) {
foreach($files as $file) {
if($idx==count($files)-1) break;
unlink($file);
$idx++;
}
}
}


$size = 0;

$files = glob('dpic/*.*');
usort($files, function($a, $b) {
return filemtime($a) < filemtime($b);
});
$idx=0;

$files = array_reverse($files, true);

if(is_dir("dpic")) {
foreach($files as $file) {
if($idx==count($files)-1) break;
$filesize = filesize($file);
$size+=$filesize;
$idx++;
}
$idx=0;
if($size>5000000) {
foreach($files as $file) {
if($idx==count($files)-1) break;
unlink($file);
$idx++;
}
}
}

include("../data.php");

class Password extends Dobj{
var $content;
}

class Msg extends Dobj{
var $text;
}

class Inimene extends Dobj{
var $name;
var $time;
var $dpic;
}

class Picture extends Dobj{
var $name;
var $time;
}

$myd=new Data();

$myd->loadobjecttables();


$itime2=$myd->gettime();
$itime2=date( 'd.m.Y H:i:s', strtotime( '+3 hour' , strtotime($itime2) ) );

if(!is_dir("uploads")) {
mkdir("uploads", 0777);
}

if(!is_dir("dpic")) {
mkdir("dpic", 0777);
}

$files1 = scandir("uploads");

if(count($files1)>270) {
rrmdir("uploads");
mkdir("uploads", 0777);
}



$msg=new Msg();
$name1 = strip_tags($_POST['text0']);

if($name1!="") {
$name1=substr($name1,0, 646);
}

$addline=true;

$tabls=$myd->dtables;

$time=null;
$tidx=-1;
$nooutput=false;
$oput="";

$pwd1="";

if($tabls!=null) {
for($i=0; $i<count($tabls); $i++) {
$oc=$tabls[$i][0]->getNameOfClass();
if ($oc=="Password") {
$pwd1=$tabls[$i][0]->content;
}
}
}

$pwdactive=0;
if($pwd1!="") {

$pwdactive=1;

if($pwd1!=$_GET['code']) exit(0);

}

if($tabls!=null&&(count($tabls)>1)&&$pwdactive==1||$pwdactive==0&&$tabls!=null) {


$foundtime=false;
for($i=0; $i<count($tabls); $i++) {
$oc=$tabls[$i][0]->getNameOfClass();
if ($oc=="Inimene") {
$times1=array();
for($ii=0; $ii<count($tabls[$i]); $ii++) {
$times1[]=$tabls[$i][$ii]->time;
}
$latestt=max(array_map('strtotime', $times1));
$time=date('d.m.Y H:i:s', $latestt);
$foundtime=true;
}
}
if($foundtime) {
$dtimenow = new DateTime($itime2);
$dtime = new DateTime($time);
$diff = $dtimenow->getTimestamp() - $dtime->getTimestamp();
if($diff<1) {
$nooutput=true;
}
}
if(!$foundtime) {
$time=$itime2;
}
} else {
$time=$itime2;
}


$pic_uploaded=false;

$newpic1=null;

if(isset($_POST["submit"])&&$_FILES["fileToUpload"]['error']==0&&$nooutput==false) {
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

if (file_exists($target_file)) {
$uploadOk = 0;
}
if ($_FILES["fileToUpload"]["size"] > 5000000) {
$uploadOk = 0;
}
if($imageFileType=="php") {
$uploadOk = 0;
}
$time1212=time();

if ($uploadOk == 0) {
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], str_replace('.', $time1212.'.', $target_file))) {
$pic_uploaded=true;
} else {
}
}


$newpic=null;
$tabls0=null;
if($pic_uploaded==true) {
$tabls0=$myd->dtables;
$picstidx=-1;
if($tabls0!=null) {
for($i=0; $i<count($tabls0); $i++) {
$oc0=$tabls0[$i][0]->getNameOfClass();
if ($oc0=="Picture") {
$picstidx=$i;
}
}
if($picstidx==-1) {
$picstidx=count($tabls0);
$tabls0[]=array();
}
} else {
$tabls0=array();
$tabls0[]=array();
$picstidx=0;
}

$newpic=new Picture();
$newpic->name=basename(str_replace('.', $time1212.'.', $_FILES["fileToUpload"]["name"]));
$newpic->time=$itime2;
$newpic1=$newpic;
$tabls0[$picstidx][]=$newpic;
$myd->dtables=$tabls0;
$myd->saveobjecttable("Picture");
}

}

$url = isset($_SERVER['HTTPS']) ? 'https://' : 'http://';
$url .= $_SERVER['SERVER_NAME'];
$url .= $_SERVER['REQUEST_URI'];
$info = parse_url($url);
$info["path"]=dirname($info["path"]);

$new_url = $info["scheme"]."://".$info["host"];
//if(!empty($info["query"])) $new_url .= "?".$info["query"];
//$new_url=substr($new_url,0,-1);
//if(!empty($_SERVER["SERVER_PORT"])) $new_url .=":".$_SERVER["SERVER_PORT"];
//if(!empty($info["fragment"])) $new_url .= "#".$info["fragment"];

$new_url = str_replace(' ', '', $new_url);

echo "<a class='main1' href='".$new_url."'>Avalehele</a><p></p>";

function strip($var) {
$allowed = '<font>';
return strip_tags($var, $allowed);
}

function closetags ( $html )
{
preg_match_all ( "#<([a-z]+)( .*)?(?!/)>#iU", $html, $result );
$openedtags = $result[1];

preg_match_all ( "#</([a-z]+)>#iU", $html, $result );
$closedtags = $result[1];
$len_opened = count ( $openedtags );

if( count ( $closedtags ) == $len_opened )
{
return $html;
}
$openedtags = array_reverse ( $openedtags );

for( $i = 0; $i < $len_opened; $i++ )
{
if ( !in_array ( $openedtags[$i], $closedtags ) )
{
$html .= "</" . $openedtags[$i] . ">";
}
else
{
unset ( $closedtags[array_search ( $openedtags[$i],
$closedtags)] );
}
}
return $html;
}



$ind=array();
$itidx=-1;
if($tabls!=null) {
for($i=0; $i<count($tabls); $i++) {
$oc=$tabls[$i][0]->getNameOfClass();
if ($oc=="Inimene") {
$ind=$tabls[$i];
$itidx=$i;
}
}
}

if($ind!=null) {
if(count($ind)>2499) {
echo "Topic full(2500).";
exit(0);
}
}

$itime=$_POST['itime'];

if($itime==""||$itime==null) {
$itime=$myd->gettime();
$itime=date( 'd.m.Y H:i:s', strtotime( '+3 hour' , strtotime($itime) ) );
$time=$itime;
}

if($nooutput==false) {

$currenti=null;
$iexists=false;

for($i=0; $i<count($ind); $i++) {
if($ind[$i]->time==$itime) {
$currenti=$ind[$i];
}
}

for($i=0; $i<count($ind); $i++) {
if($ind[$i]->name==$name1) {
$iexists=true;
}
}


if(count($ind)>0) {
if($name1!=""&&$currenti==null&&$iexists==false) {
$curi=new Inimene();
$curi->name=$name1;
$curi->time=$itime;
$ind[]=$curi;
$tabls[$itidx]=$ind;
$myd->dtables=$tabls;
$myd->saveobjecttable("Inimene");
$currenti=$curi;
} if($name1!=""&&$currenti==null&&$iexists==true) {
$name1="";
$addline=false;
$nooutput=true;
} else if($name1!=""&&$currenti->name!=""&&$name1!=$currenti->name&&$iexists==false)
{
$currenti->name=$name1;
$currenti->time=$itime2;
$itime=$itime2;
$myd->dtables=$tabls;
$myd->saveobjecttable("Inimene");

} else if($name1!=""&&$currenti->name!=""&&$name1!=$currenti->name&&$iexists==true)
{
$name1=$currenti->name;
$addline=false;
$nooutput=true;
} else if($name1!=""&&$currenti->name!=""&&$name1==$currenti->name)
{
$currenti->time=$itime2;
$itime=$itime2;
$myd->dtables=$tabls;
$myd->saveobjecttable("Inimene");
} else {
$addline=false;
}

} else {
if($name1!=""&&$iexists==false&&$currenti!=null) {
$curi=new Inimene();
$curi->name=$name1;
$curi->time=$itime2;
$itime=$itime2;
$ind12=array();
$ind12[]=$curi;
$tabls[]=$ind12;
$myd->dtables=$tabls;
$myd->saveobjecttables();
$currenti=$curi;

} if($name1!=""&&$iexists==false&&$currenti==null) {
$curi=new Inimene();
$curi->name=$name1;
$curi->time=$itime2;
$itime=$curi->time;
$ind12=array();
$ind12[]=$curi;
$tabls[]=$ind12;
$myd->dtables=$tabls;
$myd->saveobjecttables();
$currenti=$curi;
}
else if($name1!=""&&$iexists==true) {
$name1="";
$addline=false;
$nooutput=true;
} else {
$addline=false;
$nooutput=true;
}
}

$pic_uploaded2=false;


if(isset($_POST["submit"])&&$_FILES["fileToUpload2"]['error']==0) {
$target_dir = "dpic/";
$target_file = $target_dir . basename($_FILES["fileToUpload2"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));

if (file_exists($target_file)) {
$uploadOk = 0;
}
if ($_FILES["fileToUpload2"]["size"] > 5000000) {
$uploadOk = 0;
}
if($imageFileType=="php"||!($imageFileType=="jpg"||$imageFileType=="png"||$imageFileType=="gif"||$imageFileType=="jpeg")) {
$uploadOk = 0;
}
$time1212=time();
if ($uploadOk == 0) {
} else {
if (move_uploaded_file($_FILES["fileToUpload2"]["tmp_name"], str_replace('.', $time1212.'.', $target_file))) {
chmod(str_replace('.', $time1212.'.', $target_file), 0744);
$pic_uploaded2=true;
} else {
}
}

$newpic2=null;
$tabls0=null;
if($pic_uploaded2==true) {
$tabls0=$myd->dtables;
$picstidx=-1;
if($tabls0!=null) {
for($i=0; $i<count($tabls0); $i++) {
$oc0=$tabls0[$i][0]->getNameOfClass();
if ($oc0=="Picture") {
$picstidx=$i;
}
}
if($picstidx==-1) {
$picstidx=count($tabls0);
$tabls0[]=array();
}
} else {
$tabls0=array();
$tabls0[]=array();
$picstidx=0;
}

$newpic2=new Picture();
$newpic2->name=basename(str_replace('.', $time1212.'.', $_FILES["fileToUpload2"]["name"]));
$newpic2->time=$itime2;
$tabls0[$picstidx][]=$newpic2;
$myd->dtables=$tabls0;
$myd->saveobjecttable("Picture");
$currenti->dpic=$newpic2->name;

$tabls0=$myd->dtables;
$itidx2=-1;
if($tabls0!=null) {
for($i=0; $i<count($tabls0); $i++) {
$oc0=$tabls0[$i][0]->getNameOfClass();
if ($oc0=="Inimene") {
$itidx2=$i;
}
}
}

for($i=0; $i<count($tabls0[$itidx2]); $i++) {
if($tabls0[$itidx2][$i]->name==$currenti->name&&$tabls0[$itidx2][$i]->time==$currenti->time) {
$myd->dtables=$tabls0;
$myd->saveobjecttable("Inimene");
}
}


}

}


$msg1=strip($_POST['text1']);
$msg1 = preg_replace('#<script(.*?)>(.*?)</script>#is', '', $msg1);
$msg12=$msg1;

if($currenti->dpic!=""||$currenti->dpic!=null) {
$msg->text=$itime2." ".$name1." <img src='dpic/".$currenti->dpic."' onerror='imgError(this);' style='width: 50px;' > : ".$msg1;
} else {
$msg->text=$itime2." ".$name1." : ".$msg1;
}
$msg->text=substr($msg->text,0, 216345);
$msg->text=closetags($msg->text);
$texists=false;
$msgtidx=0;

$t1=$myd->dtables;


for($i=0; $i<count($t1);$i++) {
if($t1[$i][0]->getNameOfClass()=="Msg") {
$msgtidx=$i;
$texists=true;
if(count($t1[$i])>165) {
$arr12 = array_slice($t1[$i], -165);
$t1[$i]=$arr12;
$myd->dtables=$t1;
$myd->saveobjecttable("Msg");
break;
}
break;
}
}
$tabls=$myd->dtables;


if(!empty($_POST['text1'])&&$addline==true) {
if (strlen(trim($msg1)) != 0&&$pic_uploaded==true) {
if($texists==false) {
$aone=array();
$ftype = strtolower(pathinfo("uploads/".$newpic1->name,PATHINFO_EXTENSION));
if($ftype=="jpg"||$ftype=="png"||$ftype=="jpeg"||$ftype=="gif") {

$imgsize = getimagesize("uploads/".$newpic1->name);
$width=$imgsize[0];
$height=$imgsize[1];
if($width>450) {
//$multip=$width/250;
$width=450;
//$height=$height/$multip;
}
$msg->text.="<p></p><img src='uploads/".$newpic1->name."' onerror='imgError(this);' style='width: ".$width."px;' >";
} else {
$msg->text.="<p></p><a class='file1' href='uploads/".$newpic1->name."'>File: ".$newpic1->name."</a>";
}
$aone[]=$msg;
$tabls[]=$aone;
$myd->dtables=$tabls;
$myd->saveobjecttable("Msg");
} else {
$ftype = strtolower(pathinfo("uploads/".$newpic1->name,PATHINFO_EXTENSION));
if($ftype=="jpg"||$ftype=="png"||$ftype=="jpeg"||$ftype=="gif") {
$imgsize = getimagesize("uploads/".$newpic1->name);
$width=$imgsize[0];
$height=$imgsize[1];
if($width>450) {
//$multip=$width/250;
$width=450;
//$height=$height/$multip;
}
$msg->text.="<p></p><img src='uploads/".$newpic1->name."' onerror='imgError(this);' style='width: ".$width."px;'/>";
} else {
$msg->text.="<p></p><a class='file1' href='uploads/".$newpic1->name."'>File: ".$newpic1->name."</a>";
}

$tabls[$msgtidx][]=$msg;
$myd->dtables=$tabls;
$myd->saveobjecttable("Msg");
}
} else if (strlen(trim($msg1)) != 0&&$pic_uploaded==false) {
if($texists==false) {
$aone=array();
$aone[]=$msg;
$tabls[]=$aone;
$myd->dtables=$tabls;
$myd->saveobjecttable("Msg");
} else {
$tabls[$msgtidx][]=$msg;
$myd->dtables=$tabls;
$myd->saveobjecttable("Msg");
}
}
$t2=$myd->query("get text from Msg;");
for($i=0; $i<count($t2);$i++) {
$oput.=$t2[$i]."<p></p>";
}
} else {
if($texists==true) {
$t2=$myd->query("get text from Msg;");
for($i=0; $i<count($t2);$i++) {
$oput.=$t2[$i]."<p></p>";
}
}
}

}

?>
<div class="a1" spellcheck="false">
<?php echo $oput;
?>
</div>
<p></p>
<form method="POST" enctype="multipart/form-data">
<input name="itime" id="itime" type="hidden" value="<?php echo $itime; ?>"/>
<p class="main2">Nimi: <input name="text0" id="text0" type="text"
style="width: 114px;" value="<?php echo $name1; ?>"> </p>
<p class="main2">S├Ąnum:</p>
<textarea class="text1" name="text1" id="text1" type="text">
<?php
if($nooutput==true) {
echo $msg12;
}
?>
</textarea>
<p></p>
<p class="main5">Pilt v├Ąi muud t├╝├╝pi fail (kuni 5 mb'd):</p>
<input type="file" class="main4" name="fileToUpload" id="fileToUpload"/>
<p></p>
<p></p>
<p></p>
<p class="main5">Mini pilt (kuni 5 mb'd):</p>
<input type="file" class="main4" name="fileToUpload2" id="fileToUpload2"/>

<input type="submit" name="submit" class="main3" value="Saada"/>
</form>

<p></p>
<p class="main2">Aktiivsed:</p>
<div class="main2" id="ilist">
</div>
<script>

function nl2br (str, is_xhtml) {
if (typeof str === 'undefined' || str === null) {
return '';
}
var breakTag = (is_xhtml || typeof is_xhtml === 'undefined') ? '<br />'
: '<br>';
return (str + '').replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g, '$1' +
breakTag + '$2');
}

if (!String.prototype.unescapeHTML) {
String.prototype.unescapeHTML = function() {
return this.replace(/&[#\w]+;/g, function (s) {
var entityMap = {
"&amp;": "&",
"&lt;": "<",
"&gt;": ">",
'&quot;': '"',
'&#39;': "'",
'&#x2F;': "/",
'&nbsp;': " "
};

return entityMap[s];
});
};
}

var prevr="";
var r0="";

function renewing() {
var xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == XMLHttpRequest.DONE) {
if (xmlhttp.status == 200) {
xmlhttp.responseText=nl2br(xmlhttp.responseText);
var a111=xmlhttp.responseText;
r0=a111;
a111=a111.unescapeHTML();
document.getElementsByClassName("a1")[0].innerHTML = a111;
}
else if (xmlhttp.status == 400) {
alert('Error 400');
}
else {
alert('Not 200 returned');
}
}
};
var d765=new Date();
xmlhttp.open("GET", "renewing.php?d="+d765, false);
xmlhttp.setRequestHeader('Cache-Control', 'no-cache');
xmlhttp.send();
if(prevr!=r0) {
a00000();
}
prevr=r0;

}

function renewingilist() {
var xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == XMLHttpRequest.DONE) {
if (xmlhttp.status == 200) {
document.getElementById("ilist").innerHTML = xmlhttp.responseText;
}
else if (xmlhttp.status == 400) {
alert('Error 400');
}
else {
alert('Not 200 returned');
}
}
};
var d765=new Date();
xmlhttp.open("GET", "ilist.php?d="+d765, false);
xmlhttp.setRequestHeader('Cache-Control', 'no-cache');
xmlhttp.send();
}


function a00000() {
var textarea = document.getElementsByClassName("a1")[0];
textarea.scrollTop = 50000000;
}

setInterval(function(){
renewing();
}, 1578);

setInterval(function(){
renewingilist();
}, 3953);


setInterval(function(){

var namearea = document.getElementById("text0");
var isFocused = (document.activeElement === namearea);
if(isFocused) {
} else {
document.getElementById('text1').focus();
}
}, 6871);

</script>
</body>

</html>

renewing.php


<?php

include("../data.php");

class Msg extends Dobj{
var $text;
}

$myd=new Data();

$myd->loadobjecttables();
$texists=false;
$t1=$myd->dtables;
for($i=0; $i<count($t1);$i++) {
if($t1[$i][0]->getNameOfClass()=="Msg") {
$texists=true;
break;
}
}

if($texists==true) {
$t2=$myd->query("get text from Msg;");
for($i=0; $i<count($t2);$i++) {
echo $t2[$i]."<p></p>";
}
} else {

}
?>
0 new messages