Получается как новичок, я понимаю как все работает, что куда отправляеться. Но проблема возникла когда решил засунуть все в класс. Много ошибок и с ООП не особо дружу. Можете помочь, дать советы. Через классы нужно подключитсья к бд. и с помощью таблицы уже выводить и наполнять данными. PHP: <?php $header = file_get_contents("Header.php"); echo $header; $db_host='localhost'; $db_name='photos'; $db_user='root'; $db_pass=''; @mysql_connect($db_host,$db_user,$db_pass); @mysql_select_db($db_name); $id = $_POST['id']; $idgroup = $_POST['idgroup']; $data_created = $_POST['data_created']; $r1 = "photos1"; $r2 = "photos2"; $result = mysql_query("SELECT * FROM $r1 WHERE id='$id' OR idgroup='$idgroup' OR data_created='$data_created'"); if ($row = mysql_fetch_array($result)) { echo 'Нашло данные по первой таблице'; $result=mysql_query("SELECT * FROM `photos1` WHERE id='$id' OR idgroup='$idgroup' OR data_created='$data_created'"); while($row = mysql_fetch_array($result)) { $urll = $row['url']['photo_url']; $sizen = file_get_contents("foto_size.php"); echo '<tr><td class="id_foto">' .$row['id'].'</td><td class="data_foto">' .$row['data_created'].'</td><td class="id_foto">' .$row['idgroup'].'</td><td><img src="' .$row['url'].'"></td><td class="imgsize">'; echo "Тип изображения: ".$flag[$size[2]]."<br>"; echo "Ширина: " .$size[0]."<br />"; echo "Высота: ".$size[1]."<br />"; echo "Битность: ".$size['bits']."<br />"; echo '</td></tr>'; } echo '</table></form>'; } else { $result=mysql_query("SELECT * FROM $r2 WHERE id='$id' OR group_id='$idgroup' OR created='$data_created'"); echo 'В первой данных небыло пришлось искать во второй'; while($row=mysql_fetch_array($result)) { $urll = $row['photo_url']; if (@fopen($urll, r)) { $size = getimagesize("$urll"); file_get_contents("foto_size.php"); echo '<tr><td class="id_foto">' .$row['id'].'</td><td class="data_foto">' .$row['created'].'</td><td class="id_foto">' .$row['group_id'].'</td><td><img src="' .$row['photo_url'].'"></td><td class="imgsize"> '; echo "Тип изображения: ".$flag[$size[2]]."<br>"; echo "Ширина: " .$size[0]."<br />"; echo "Высота: ".$size[1]."<br />"; echo "Битность: ".$size['bits']."<br />"; echo '</td></tr>'; } } } ?>
Да, поскольку мне говорят мы живем не в 90, сейчас есть классы. Попробуй использовать их. Если более детально. То у меня есть 2 наполненые базы. В ней храниться информация: Фото, Ид, Ид группы, дата, ссылка на фото. действия которые должны производиться. Через форму ищу данные и вывожу на экран. Если в 1 таблице данных нет то она переходит ко 2 . Если нету даных в обеих таблицах ни какого действия не происходит. если в таблице нету фото, эта запись не выводиться. И вот, теперь нужно это все кинуть в класс
Это я уже читал и не раз, если вызывать все, то получаеться отлично, но если уже все настраивать и вписывать не пойму что и к чему. У меня только получилось вывести всю информацию с бд
Хорошо. Тогда попробуйте разделить логику, определить методы. Например: у меня будет два класса. Первый класс будет отвечать за хранение данных и работать непосредственно с mysql. Результат работы его методов будет представлен в виде простых массивов. Второй класс будет отвечать за представление и генерацию HTML-кода. Его методы на вход будут получать какие-то готовые ассоциативные массивы и возвращать строку содержащую html-код. Где-то будет отдельный файл, где будут инициализированы эти два объекта. Запущены какие-то функции из первого класса, результаты их работы будут переданы методам второго класса. А результат работы второго объекта - будет выведен через echo Как-то так
PHP: <?php /*Вывод ошибок на экран*/ ini_set("display_errors", 1); error_reporting(E_ALL); /*Вывод ошибок на экран*/ /* */ class Database { public $id = '11'; public $idgroup = ''; public $data_created = ''; private $db_host = 'localhost'; private $db_user = 'root'; private $db_pass = ''; private $db_name = 'photos'; public function getDB() { $link = mysqli_connect($this->db_host, $this->db_user, $this->db_pass, $this->db_name); if (!$link) { die(mysqli_connect_errno() . '<p>Нету подключения к Базе Данных </p>' . mysqli_connect_error()); } echo "Базы данных подключены, приступаем к поиску <br /><br />"; $result = mysqli_query($link, "SELECT * FROM `photos1` WHERE id='$this->id' OR idgroup='$this->idgroup' OR data_created='$this->data_created'"); $count_row = mysqli_num_rows($result); if ($count_row) { echo 'В первой данных небыло пришлось искать во второй'; $result = mysqli_query($link, "SELECT * FROM `photos1` WHERE id='$this->id' OR idgroup='$this->idgroup' OR data_created='$this->data_created'"); while ($row = mysqli_fetch_array($result)) { echo '<br />' . $row[0] . '<br />' . $row[1] . '<br />' . $row[2] . '</td><br /><td><img src="' . $row[3] . '"><br />'; } } else { $result2 = mysqli_query($link, "SELECT * FROM `photos2` WHERE id='$this->id' OR group_id='$this->idgroup' OR created='$this->data_created'"); echo 'В первой данных небыло пришлось искать во второй'; while ($row = mysqli_fetch_array($result2)) { echo '<br />' . $row[0] . '<br />' . $row[1] . '<br />' . $row[2] . '</td><br /><td><img src="' . $row[3] . '"><br />'; } } } } $object = new Database(); $object->getDB(); ?> Методом тыка получилось то что пытался сделать
Уметь пользоваться ООП и знать его парадигмы и принципы - обязанность каждого современного разраба. Юзать же ООП ради ООП там, где оно не впилось - имхо, глупость. Как и любое действие, сделанное ради себя самого.