Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Открыть новую тему     Написать ответ в эту тему

vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
решил заняться MySQL - я в MySQL начинающий делаю первые шаги
 

Код:
CREATE DATABASE database_01
    CHARACTER SET utf8
    COLLATE utf8_general_ci;
 
CREATE TABLE database_01.company
   
    (company_num int,
     company_name char(50));
     
     
INSERT INTO database_01.company (company_num,company_name) VALUES(15,'Петя');
 

INSERT не получается , помогите плиз

Всего записей: 1623 | Зарегистр. 25-02-2013 | Отправлено: 19:47 11-04-2016
vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
INSERT INTO database_01.company (company_num,company_name) VALUES('15','Петя');  
всё сейчас работает
вопрос снят

Всего записей: 1623 | Зарегистр. 25-02-2013 | Отправлено: 23:07 11-04-2016
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262

Цитата:
всё сейчас работает  
вопрос снят

причина явно была не в
Цитата:
VALUES(15,'Петя');  

так как первый столбец - int типа.

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 01:03 12-04-2016
vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
VALUES(15,'Петя');  

ой не знаю я так испробовал работает
 
Добавлено:
только что проверил int типа работает как с кавычками так и без

Всего записей: 1623 | Зарегистр. 25-02-2013 | Отправлено: 04:32 12-04-2016
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262

Цитата:
только что проверил int типа работает как с кавычками так и без

я не спорю, mysql сам, в данном случае, преобразует тип. но проблема изначально была не в этом. нужно приводить и сообщение об ошибке в таком случае.

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 05:06 12-04-2016
vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
так как правильно при int типа с кавычками или без ?
сообщение об ошибке не выдает. использую XAMPP там по моему MariaDB

Всего записей: 1623 | Зарегистр. 25-02-2013 | Отправлено: 05:12 12-04-2016
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262

Цитата:
так как правильно при int типа с кавычками или без ?  

в данной ситуации не важно, так как преобразует самостоятельно тип к инту.

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 05:13 12-04-2016
vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
я находил примеры с w3schools там при int типа  с кавычками

Всего записей: 1623 | Зарегистр. 25-02-2013 | Отправлено: 05:17 12-04-2016
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем доброго дня и хорошего настроения!
Помогите пожалуйста.
 
 
html.php

Цитата:
 
<html>
<head>
</head>
<body>
<form action="php.php" method="POST">
<input type="text" name="email" size="20" maxlength="20"><br><br>
<input type="submit" value="Поиск">
</form>
</body>
</html>
 

 
 
php.php

Цитата:
 
<?php
$host="localhost";
    $user="admin";
    $pass="123"; //установленный вами пароль
    $db_name="test";
    $link=mysql_connect($host,$user,$pass);
    mysql_select_db($db_name,$link);
    ?>
<?php
     $sql = "SELECT * FROM works WHERE email='" . mysql_real_escape_string($_POST['email']) . "'";  
     $result = mysql_query($sql);
    while ($result = mysql_fetch_array($sql)) {
        echo "вывод <b><font color=blue>".  
        $result['id']."</font></b> Пользователь: <b>".
        $result['name']."</b><br> email: <b><font color=red>".
        $result['email']."</font></b>:<br> Описание: ".
        $result['opis']."<br> <br>";
      }
?>
 

Ну а в конечном итоге получается то что выводится

Цитата:
PHP Notice:  Undefined index: email in D:\php\php.php on line 10
PHP Warning:  mysql_fetch_array() expects parameter 1 to be resource, string given in D:\web2\php.php on line 12
 

 
Я понимаю что это база php.  
Но справиться с ней я не могу.

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 19:12 28-02-2018 | Исправлено: Ghosting4469, 19:17 28-02-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469

Цитата:
PHP Notice:  Undefined index: email in D:\php\php.php on line 10

1) значит ваша форма не идет через POST в php.php
2)
Цитата:
mysql_fetch_array() expects parameter 1 to be resource, string  


Код:
   $res = mysql_query($sql);  
    while ($result = mysql_fetch_array($res)) {  

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 20:40 28-02-2018
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Спасибо тебе, ты как всегда отзывчив. А я как всегда не внимателен.
 
У меня была форма которая все строки выводит, а благодаря твоему ответу:

Код:
 
$sql = "SELECT * FROM works WHERE email='" . mysql_real_escape_string($_POST['email']) . "'";
 

 
Я смог доработать php файл.
 
Если кому то интересно

Код:
 
<?php
$host="localhost";
    $user="admin";
    $pass="123"; //установленный вами пароль
    $db_name="test";
    $link=mysql_connect($host,$user,$pass);
    mysql_select_db($db_name,$link);
    ?>
<?php
$em = $_POST["email"];
     $sql = mysql_query("SELECT * FROM works WHERE email='$em'", $link);  //вот тут прям особое внимание
    while ($result = mysql_fetch_array($sql)) {
        echo "Заявка№ <b><font color=blue>".  
        $result['id']."</font></b> Пользователь: <b>".
        $result['name']."</b><br> email: <b><font color=red>".
        $result['email']."</font></b>:<br> Описание: ".
        $result['opis']."<br> <br>";
    }
      
?>
 
 

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 20:47 28-02-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469

Цитата:
SELECT * FROM works WHERE email='$em'

https://ru.wikipedia.org/wiki/Внедрение_SQL-кода

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 20:49 28-02-2018
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет и + в карму)
Есть вот файл php который показывает нужные строки при поиске по id из таблицы в БД.

Код:
 
$em = $_POST["what"];
     $sql = mysql_query("SELECT * FROM works WHERE id='$what'", $link);  
        while ($result = mysql_fetch_array($sql)) {
         
echo "<div onClick=\"document.location='test.php'\" id='stick'">№<font color=blue>".  
$result['id']."</font>".
$result['name']."<br>".
$result['email']."<br> ".
$result['opis']."</div><br>";
    }
 

 
Он работает хорошо выводит все результаты в отдельные блоки и при клике на блок открывается нужная ссылка'test.php'. Как раз то чего и добивался.  
Однако появилась необходимость передать значение id в файл 'test.php' которое написано в блоке, при клике на блок.
 
Есть ли у кого-нибудь варианты как это можно сделать?

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 13:13 03-03-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469
http://url/file.php?id=цифровое_значение
Тогда в file.php оно будет в $_GET['id']  
Почитайте хоть что то об основах php

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 14:16 03-03-2018 | Исправлено: Mavrikii, 14:17 03-03-2018
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Mavrikii
Этот вариант я рассматривал он не работает так как надо.
 

Цитата:
Почитайте хоть что то об основах php

Читаю параллельно, но сроки поджимают

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 18:20 03-03-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469

Цитата:
 
Этот вариант я рассматривал он не работает так как надо.  

Скорее вы что то делаете не так

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 18:32 03-03-2018
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
То что вы рекомендуете понятно и работает. Я же немного другое пытался описать.
 
Идея в том что на странице несколько блоков, в каждом блоке есть написанный id.  
И при клике на этот блок нужно взять значение id из этого блока и передать его на другую страницу, не трогая другие блоки.  
 
 
 
Добавлено:

Цитата:
Скорее вы что то делаете не так

 
Точнее он работает для 1 блока, а если их несколько то получается #$%^@#$%@#

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 18:35 03-03-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469

Цитата:
Точнее он работает для 1 блока, а если их несколько то получается

Повторюсь - значит вы что то делаете не так. Я не вижу вашего кода, создающего блоки, поэтому и не могу сказать в чем проблема.

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 18:45 03-03-2018
Ghosting4469



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
 
 
$em = $_POST["what"];
     $sql = mysql_query("SELECT * FROM works WHERE id='$what'", $link);  
        while ($result = mysql_fetch_array($sql)) {
         
echo "<div onClick=\"document.location='test.php'\" id='stick'">№<font color=blue>".  
$result['id']."</font>".
$result['name']."<br>".
$result['email']."<br> ".
$result['opis']."</div><br>";
    }  
 

 
Вот такие блоки формирует этот код в зависимости от запрса из формы html формируются другие блоки.
При клике на один из этих блоков открывается страница onClick=\"document.location='test.php'\"  
Но на эту страницу мне нужно передать id одного из блоков. Кстате в этом примере реализовано через POST
 

Всего записей: 42 | Зарегистр. 21-03-2017 | Отправлено: 18:58 03-03-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ghosting4469

Цитата:
'test.php'

ну, и где ?id=

Код:
echo "<div onClick=\"document.location='test.php?id=" . $result['id'] . "'\" id='stick'">№<font color=blue>".    

Всего записей: 6817 | Зарегистр. 20-09-2014 | Отправлено: 01:00 04-03-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Компьютерный форум Ru.Board » Интернет » Web-программирование » MySql/PHP: общие вопросы

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2018

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru