Такая задача, есть база с таблицей, в ней данные " имя - фамилия - почта" Нужен код, который будет выводить таблицу с этими данными!!!!! я просто в PHP полный 0. соответственно, когда я в базе меняю эти данные например МИША на САШУ, то при выводе заново, данные менялись! помогите пожалуйста ребят!!!!
а как ты будешь менять данные в базе? как обстоят дела со знанием postgresql? есть SQL запрос который создаёт эту таблицу и тестовый данные?
Postgresql знаю. ну буду добавлять новые данные, через Insert into ....и тд!!! на мвваре у меня создано две виртуалки! на обеих стоит ОС Linux. Сервер и клиент, на сервере настроен постгрес, апач2! на серваке создал базу через командную строку, затем создал таблицу, и заполнил её, так для пирмера одну строчку ! имя фамилия и почта! на клиенте запускаю браузер, ввожу айпи сервера, у меня в итоге должна открыться страница с таблице заполненой, сверху должна быть строчка с кнопкой СОХРАНИТЬ! --- Добавлено --- --- Добавлено --- ВОТ БАЗА с ТАБЛИЦЕй ! вот эти данные должны выводиться на странице php
@vladvladvlad ну код довольно рабочий, на сколько можно сказать по картинке, даже кнопка сохранить есть, для чего она кстати?
Ну вот такая задача стоит, нужно кровь из носа, вот так должно быть в итоге!!!!! картинка paint сделал, как должно быть в итоге! ПОмоги если можешь!!!!!!!
Что нужно ввести в поле для ввода? Что должно происходить после сохранения? --- Добавлено --- Стараюсь, вот выясняю что нужно, не всем очевидно что тебе надо
Поле для ввода нужно для того, чтобы ввести например новые данные, вместо дима петров и почты, ввести Саша Иванов и новую почту, нажимаем сохранить и данные в таблице меняются! --- Добавлено --- Кратко, Нужно вывести данные из таблицы, и обратная связь нужна, поле для ввода и кнопка!
ты хочешь чтобы в одно поле вводили данные, а потом их разделять на имя фамилию и почту? --- Добавлено --- для размышления: PHP: <?php if (!empty($_POST['line'])) { $data = explode(' ', $_POST['line'], 3); if (is_array($data) && count($data) == 3) { pg_query($conn, "INSERT ... `firstname`='".pg_escape_string($data[0])."', `lastname`='".pg_escape_string($data[1])."', `email`='".pg_escape_string($data[2])."', "); header('Location: '.$_SERVER["PHP_SELF"]); } } ?> <form method="POST" action="<?=$_SERVER["PHP_SELF"]?>"> <input type="text" name="line"> <input type="submit" value="save"> </form>
Кратко, Нужно вывести данные из таблицы, и обратная связь нужна Да, чтобы в поле вводить данные, и они разделялись на имя фамилию и почту в таблице!!!!! ты правильно понял!!!!!
после какой строчки у себя в коде, я должен вставить твой код? тупой вопрос наверно, но я не понимаю последовательность действий, что за чем должно идти(((((( извини
@vladvladvlad выложи свой код в теге PHP (в редакторе сообщений форума первая кнопка </>) я вставлю куда надо
PHP: <?php $host = "192.168.1.1"; $user = "postgres"; $password = "11111111"; $dbname = "vlad"; $con = pg_connect("host=$host user=$user password=$password dbname=$dbname") or die("Could not connect to server\n"); if (!empty($_POST['line'])) { $data = explode(' ', $_POST['line'], 3); if (is_array($data) && count($data) == 3) { pg_query($conn, "INSERT ... 'firstname'='" . pg_escape_string($data[0]) . "', 'lastname'='" . pg_escape_string($data[1]) . "', 'email'='" . pg_escape_string($data[2]) . "', "); header('Location: ' . $_SERVER["PHP_SELF"]); exit; } } $query = "SELECT * FROM Friends"; $rs = pg_query($con, $query) or die("XYU: $query\n"); $n = pg_num_rows($result); ?><!DOCTYPE html> <html> <head> <title></title> </head> <body> <table border=1> <tr> <th>firstname</th> <th>lastname</th> <th>email</th> </tr> <?php while ($row = pg_fetch_array($rs)) { ?> <tr> <td><?=$row[0]?></td> <td><?=$row[1]?></td> <td><?=$row[2]?></td> </tr> <?php } ?> </table> <form method="POST" action="<?= $_SERVER["PHP_SELF"] ?>"> <input type="text" name="line"> <input type="submit" value="save"> </form> </body> </html> --- Добавлено --- только на 16 строке нужно вписать правильны SQL INSERT запрос
@denis01 Что я именно должен вписать? а там с ошибкой или что? я ща попробовал вообще не работает, страница пустая! издевается php надо мной хаах
У меня вообще ничего не выводит, пустая страница, включил отображение ошибок, вообще не показывает тоже ничего !!! а на счёт 16 строки обьясни, что там должно быть написано после SELECTA ((((( короче ппц, оч трудный язык,.... как вообще можно понимать его
код заработал, я хз как но работает, данные в таблицу заполняются!! УРААА СПАСИБО, единственное что осталось, это чтобы когда я ввожу в строчку новые данные например Миша - Мишин - почта, они сразу сами вносились в таблицу!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Нет, не хостинг, просто две виртуалки на локальной машине, на астралинуск! ВОт скриншот, что получилось, спасибо тебе друг, если тебе не трудно, подпиши под каждой строчке что она делает типо query - запрос к базе данных и тд !!!!!! хочу знать что делает каждая строчка в моём коде!! пожалуйста братан подпиши! код рабочий ниже пришлю
Код (Text): <?php $host = "192.168.1.1"; $user = "postgres"; $password = "11111111"; $dbname = "vlad"; $con = pg_connect("host=$host user=$user password=$password dbname=$dbname") or die("Could not connect to server\n"); if (!empty($_POST['line'])) { $data = explode(' ', $_POST['line'], 3); if (is_array($data) && count($data) == 3) { pg_query($conn, "INSERT INTO Friends ('firstname', 'lastname', 'email') . (first 'firstname'='" . pg_escape_string($data[0]) . "', 'lastname'='" . pg_escape_string($data[1]) . "', 'email'='" . pg_escape_string($data[2]) . "', "); header('Location: ' . $_SERVER["PHP_SELF"]); exit; } } $query = "SELECT * FROM Friends"; $rs = pg_query($con, $query) or die("XYU: $query\n"); $n = pg_num_rows($result); ?><!DOCTYPE html> <html> <head> <title></title> </head> <body> <table border=1> <tr> <th>firstname</th> <th>lastname</th> <th>email</th> </tr> <?php while ($row = pg_fetch_array($rs)) { ?> <tr> <td><?=$row[0]?></td> <td><?=$row[1]?></td> <td><?=$row[2]?></td> </tr> <?php } ?> </table> <form method="POST" action="<?= $_SERVER["PHP_SELF"] ?>"> <input type="text" name="line"> <input type="text" name="line"> <input type="text" name="line"> <input type="submit" value="save"> </form> </body> </html> БРАТАН) это сейчас рабочий код!!!!!!! все работает отлично, но мне нужна еще функция одна! --- Добавлено --- Вот я сделал так, три строчки и кнопка сейв! мне надо чтобы я вводил в эти строчки данные! НАпример: в первую строчку - Миша вторая строчка - МИШИН третья строчка - мейл, нажимаю сейв, данные отправляются на сервер в базу данных, и инсертом выводются в таблицу !!!!!
лучше сразу весь требуемый функционал оглашать PHP: <?php $host = "192.168.1.1"; $user = "postgres"; $password = "11111111"; $dbname = "vlad"; $con = pg_connect("host=$host user=$user password=$password dbname=$dbname") or die("Could not connect to server\n"); if (!empty($_POST['line1']) && !empty($_POST['line2']) && !empty($_POST['line3'])) { pg_query($conn, "INSERT INTO Friends ('firstname', 'lastname', 'email') . (first 'firstname'='" . pg_escape_string($_POST['line1']) . "', 'lastname'='" . pg_escape_string($_POST['line2']) . "', 'email'='" . pg_escape_string($_POST['line3']) . "', "); header('Location: ' . $_SERVER["PHP_SELF"]); exit; } $query = "SELECT * FROM Friends"; $rs = pg_query($con, $query) or die("XYU: $query\n"); $n = pg_num_rows($result); ?><!DOCTYPE html> <html> <head> <title></title> </head> <body> <table border=1> <tr> <th>firstname</th> <th>lastname</th> <th>email</th> </tr> <?php while ($row = pg_fetch_array($rs)) { ?> <tr> <td><?=$row[0]?></td> <td><?=$row[1]?></td> <td><?=$row[2]?></td> </tr> <?php } ?> </table> <form method="POST" action="<?= $_SERVER["PHP_SELF"] ?>"> <input type="text" name="line1"> <input type="text" name="line2"> <input type="text" name="line3"> <input type="submit" value="save"> </form> </body> </html>
вот данные которые я ввожу, ничего не происходит, я сделал скрин, вот те данные которые я ввел в строку, мне нужно чтобы они отображались в таблице! в коде в 12 строчке, мне кажется я неправильно запрос ввёл! ( " Insert into Friends ( 'firstname', 'lastname', 'email') - мне кажется это неправильно
может выполнишь его в терминале и если сработаешь, то выполи текст запроса сюда, помогу встроить его в скрипт
У тебя PostgreSQL какой версии? --- Добавлено --- PHP: pg_query($conn, "INSERT INTO Friends VALUES ('".pg_escape_string($_POST['line1'])."', '".pg_escape_string($_POST['line2'])."', '".pg_escape_string($_POST['line3'])."');");
Postgresql - 9.4.5 версия Поменял запрос, который ты прислал, все равно ничего не добавляется в таблицу(((( не работает короче(( блин реально это надо очень много практиковать чтобы понимать как и что работает
@vladvladvlad строку 8 замени той что я тебе выше дал в коде из этого https://php.ru/forum/threads/vyvod-tablicy-s-dannymi-postgresql.63097/#post-513384 сообщения