PHP: <?php abstract class abstra{ public $user_id; public $id; public $phone; abstract public function input(); abstract public function inputd(); abstract public function inputs(); abstract public function show(); abstract public function add($user_id, $phone); abstract public function dell($id); abstract public function search($user_id); } class positions extends abstra{ public $user_id; public $id; public $phone; function __construct(){ $this->submit = filter_input(INPUT_POST, 'submit'); $this->submitd = filter_input(INPUT_POST, 'submitd'); $this->submits = filter_input(INPUT_POST, 'submits'); $this->user_id = filter_input(INPUT_POST, 'user_id'); $this->phone = filter_input(INPUT_POST, 'phone'); if(isset($this->submitd)){ $this->id = filter_input(INPUT_POST, 'user_id'); } } function input(){ echo" <form method='POST'> <table> <tr> <td>User_Id</td> <td><input name='user_id' type='text' required></td> </tr> <tr> <td>Phone</td> <td><input name='phone' type='text' required></td> </tr> <tr> <td><input name='submit' type='submit'></td> <td></td> </tr> </table> </form>"; } function inputd(){ echo" <form method='POST'> <table> <tr> <td>User_Id</td> <td><input name='user_id' type='text' required></td> </tr> <tr> <td><input name='submitd' type='submitd'></td> <td></td> </tr> </table> </form>"; } function inputs(){ echo" <form method='POST'> <table> <tr> <td>User_Id</td> <td><input name='user_id' type='text' required></td> </tr> <tr> <td><input name='submitd' type='submits'></td> <td></td> </tr> </table> </form>"; } function show(){ $mysqli = new mysqli('localhost', 'mysql','mysql', 'test'); $query = "SELECT count(1) FROM `phone_numbers`"; if ($stmt = $mysqli->prepare($query)) { $stmt->execute(); $stmt->bind_result($counter); while ($stmt->fetch()) { sprintf("%s", $counter); } $stmt->close(); } $mysqli->close(); for($i=0;$i<$counter;$i++){ $mysqli = new mysqli('localhost', 'mysql','mysql', 'test'); $query = "SELECT `user_id`,`phone` FROM `phone_numbers` LIMIT ?,1"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("i", $i); $stmt->execute(); $stmt->bind_result($user_id,$phone); while ($stmt->fetch()) { sprintf("%s (%s)\n", $user_id,$phone); } $stmt->close(); } $mysqli->close(); echo "user_id: $user_id phone: $phone<br>"; } } function add($user_id,$phone){ $mysqli = new mysqli('localhost', 'mysql','mysql', 'test'); // Вытаскиваем из БД запись, у которой логин равняеться введенному $query = "INSERT INTO `phone_numbers` `id`,`user_id`, `phone` VALUES (NULL, ?, ?);"; if ($stmt = $mysqli->prepare($query)) { // Запустить выражение $stmt->bind_param("ii",$user_id,$phone); $stmt->execute(); $stmt->close(); } // Закрыть соединение $mysqli->close(); } function dell($id){ $mysqli = new mysqli('localhost', 'mysql','mysql', 'test'); $query = "DELETE FROM `phone_numbers` where `id`=?"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("i",$id); $stmt->execute(); $stmt->bind_result($counter); while ($stmt->fetch()) { sprintf("%s", $counter); } $stmt->close(); } $mysqli->close(); } function search($user_id){ $mysqli = new mysqli('localhost', 'mysql','mysql', 'test'); $query = "SELECT user_id,phone FROM `phone_numbers` WHERE `user_id`"; if ($stmt = $mysqli->prepare($query)) { $stmt->bind_param("i", $user_id); $stmt->execute(); $stmt->bind_result($user_id,$phone); while ($stmt->fetch()) { sprintf("%s (%s)\n", $user_id,$phone); } $stmt->close(); } $mysqli->close(); echo "user_id: $user_id phone: $phone"; } } $positions=new positions; ?><div id="show"><? $positions->input; $positions->show; if(isset($positions->submit)){ $positions->add($positions->user_id,$positions->phone); }?> </div><div id="del"><? $positions->inputd; if(isset($positions->submitd)){ $positions->dell($positions->user_id); } ?> </div> <div id="search"><? $positions->inputd; if(isset($positions->submits)){ $positions->search($positions->user_id); }
Хотите узнать что тут неправильно? Если кратко - всё. Но, это я так... Какие данные вы хотите увидеть, если вы их даже не отправляете? Для начала, вызовите хотя бы один метод, который выводит форму на экран, отправьте данные и посмотрите что происходит в вашем объекте с помощью функции var_dump()
а это что? PHP: $positions=new positions; ?><div id="show"><? $positions->input; $positions->show; if(isset($positions->submit)){ $positions->add($positions->user_id,$positions->phone); }?> </div><div id="del"><? $positions->inputd; if(isset($positions->submitd)){ $positions->dell($positions->user_id); } ?> </div> <div id="search"><? $positions->inputd; if(isset($positions->submits)){ $positions->search($positions->user_id); }
Это кусок кода из первого поста в котором ничего не изменилось. Хорошо, давайте зайдём с другой стороны: ваш "супер объект" принимает данные из POST в конструкторе. Скажите, как вы собрались отправлять данные через POST без формы? Формы нет - и данных нет