Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.08.2013, 15:08   #1
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию запись не в ту ячейку

Добрый день, подскажите, почему значения записываются не в ту ячейку?
Код:
<? include("db.php");
 
/* Таблица MySQL, в которой хранятся данные */
$table = "test";
  

$query = "SELECT site, hash, login, password, hashfile, sol FROM $table";
 
/* Выполняем запрос. Если произойдет ошибка - вывести ее. */
$res = mysql_query($query) or die(mysql_error());
 
/* Выводим данные из таблицы */
echo ("
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">
<html xmlns=\"http://www.w3.org/1999/xhtml\">
 
<head>
 
    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1251\" />
 
    <title>Данные:</title>
 
<style type=\"text/css\">
<!--
body { font: 12px Georgia; color: #666666; }
h3 { font-size: 16px; text-align: center; }
table { width: 700px; border-collapse: collapse; margin: 0px auto; background: #E6E6E6; }
td { padding: 3px; text-align: center; vertical-align: middle; }
.buttons { width: auto; border: double 1px #666666; background: #D6D6D6; }
-->
</style>
 
</head>
 
<body>
 
<h3>Вывод ранее сохраненных данных из таблицы MySQL</h3>
 
<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\">
 <tr style=\"border: solid 1px #000\">
  <td align=\"center\"><b>Site:</b></td>
  <td align=\"center\"><b>Hashfile:</b></td>
  <td align=\"center\"><b>Hash:</b></td>
  <td align=\"center\"><b>Login:</b></td>
  <td align=\"center\"><b>Password:</b></td>
  <td align=\"center\"><b>Sol:</b></td>
 </tr>
");
 
/* Цикл вывода данных из базы конкретных полей */
while ($row = mysql_fetch_array($res)) {
    echo "<tr>\n";
    echo "<td>".$row['site']."</td>\n";
    echo "<td>".$row['hasfile']."</td>\n";
    echo "<td>".$row['hash']."</td>\n";
    echo "<td>".$row['login']."</td>\n";
    echo "<td>".$row['password']."</td>\n";
    echo "<td>".$row['sol']."</td>\n</tr>\n";
}
 
echo ("</table>\n");
 
/* Закрываем соединение */
mysql_close();
 
/* Выводим ссылку возврата */
echo ("<div style=\"text-align: center; margin-top: 10px;\"><a href=\"index.html\">Вернуться назад</a></div>");
 
?>
Изображения
Тип файла: jpg Безымянный.jpg (6.6 Кб, 119 просмотров)

Последний раз редактировалось Leks123; 13.08.2013 в 15:18.
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 15:49   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

1. В данном куске кода нет ни строки про сохранение в БД, а телепатов нема
2. Вам неоднократно говорили, читайте основы php, mysql, html итд. Вы как детсадник, который просить умных дядек объяснить что такое синхрофазотрон на пальцах и владея только таблицей умножения
ADSoft вне форума Ответить с цитированием
Старый 13.08.2013, 15:55   #3
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию

Код:
<html>
<head>
 <title>Результат</title>
</head>
<body>
<?php
include "db.php";
    if($_FILES["filename"]["size"] > 1024*3*1024)
   {
     echo ("Не правильный размер файла.");
     exit;
   }
   // Проверяем загружен ли файл
     if(is_uploaded_file($_FILES["filename"]["tmp_name"]))
   {
   // Если файл загружен успешно, перемещаем его
   // из временной директории в конечную
     move_uploaded_file($_FILES["filename"]["tmp_name"], "".$_FILES["filename"]["name"]);
     
     $lines = file($_FILES["filename"]["name"]);
 
   
     foreach ($lines as $line_num => $line)
   {
	 list($login,$password,$hashfile,$sol)=explode(':',$line);
	 
     $login=trim($login);
     $password=trim($password);
	 $hashfile=trim($hashfile);
	 $sol=trim($sol);
	 
     mysql_query("INSERT INTO test SET login='$login', password='$password', hashfile='$hashfile', sol='$sol'");
    }
	echo ("Структура файла занесена в таблицу.");
	
   } else {
   
     echo("Ошибка загрузки файла");
   }
   
	//обрабочик списка, и формы
	$op = $_POST['sl'];
	$site = $_POST['site'];
	
	mysql_query("INSERT INTO test (`site`, `hash`) VALUES ('$site', '$op')");
?>
</body>
</html>
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 16:11   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

шедеврально....

в одной строке вставляем часть данных, а потом еще вставляем одну строку с другой часть данных ....

Код:
 mysql_query("INSERT INTO test SET login='$login', password='$password', hashfile='$hashfile', sol='$sol'");
....
mysql_query("INSERT INTO test (`site`, `hash`) VALUES ('$site', '$op')");
нужно делать все в одном запросе!

... кстати - и вот это работает и не ругается? -
Код:
 mysql_query("INSERT INTO test SET login='$login', password='$password', hashfile='$hashfile', sol='$sol'");
ADSoft вне форума Ответить с цитированием
Старый 13.08.2013, 16:20   #5
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию

Да нет не ругается.
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 16:23   #6
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию

Спасибо, что намекнул, исправил, все заработало)
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 16:24   #7
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию

В чем тут проблема?
Не отпимизировано?
Код:
mysql_query("INSERT INTO test SET login='$login', password='$password', hashfile='$hashfile', sol='$sol'");
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 16:31   #8
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

синтаксис необычный, похож шибко на UPDATE
обычно
Код:
INSERT INTO t (fied1, field2) VALUES (value1, value2)
ADSoft вне форума Ответить с цитированием
Старый 13.08.2013, 16:49   #9
Leks123
Пользователь
 
Регистрация: 07.12.2011
Сообщений: 56
По умолчанию

Хорошо, спасибо, перепишу, еще не большая подсказочка нужна, почему на страницу выводиться всего одна строчка, допустим из 10?
Leks123 вне форума Ответить с цитированием
Старый 13.08.2013, 16:49   #10
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
синтаксис необычный, похож шибко на UPDATE
Синтаксис по мануалу – просто используется реже:
PHP код:
    INSERT [LOW_PRIORITY DELAYED] [IGNORE]
        [
INTOtbl_name
        SET col_name
=(expression | DEFAULT), ...
        [ 
ON DUPLICATE KEY UPDATE col_name=expression, ... ] 
Отсутствие защиты от SQL-injection – вот это проблема, да.
Andkorol вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
запись в ячейку последних данных albih Microsoft Office Excel 16 27.08.2011 12:15
запись данных в ячейку albih Microsoft Office Excel 5 14.07.2011 20:07
Преобразование в транслит и запись в ячейку fs444 Microsoft Office Excel 8 18.06.2011 22:26
формула суммпроизв. запись в ячейку gsg Microsoft Office Excel 3 18.11.2010 09:16
Запись данных в ячейку orkus Помощь студентам 15 30.03.2010 16:15