SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 04.09.2011 09:16:13

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Занесения пробелов в таблицу mysql

Доброе всем время суток

Хочу заносить текст в таблицу в том виде в котором его вводит пользователь
возникла проблема с пробелами

Неактивен

 

#2 04.09.2011 09:56:21

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Занесения пробелов в таблицу mysql

Что за проблема?

Неактивен

 

#3 04.09.2011 10:10:45

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

а суть проблемы ввожу данные с формы в бд в TEXT а sql удаляет лишние пробелы
тоесть ввожу :

12451
14141

а получаю : 12451 14141 а надо :

12451
14141

и тд.

Неактивен

 

#4 04.09.2011 10:22:21

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

вот скрипт
index.php

$link = mysql_connect('localhost', 'root', 's1t9r86`');
mysql_set_charset('windows-1251',$link);
$charset = mysql_client_encoding($link);
printf ("current character set is %s\n", $charset);

if (mysql_query("CREATE DATABASE my_db",$link))
  {
  echo "<br><b>Database created";
  }
else
  {
  echo "<br><b>Error creating database: " . mysql_error();
  }

mysql_select_db("my_db", $link);
mysql_set_charset('utf8',$link);
mysql_query("SET NAMES utf8");

$sql = "CREATE TABLE Persons
(
FirstName TEXT,
LastName varchar(15),
Age int
)DEFAULT CHARSET utf8";

if (mysql_query($sql,$link))
  {
  echo "<br><b>TABLE CREATED";
  }
else
  {
  echo "<br><b>Error creating tabel: " . mysql_error();
  }
mysql_close($link);
?>
 
 
 
  <form method="post" action="page.php"> 
  <textarea name="firstname" cols="60" rows="10"></textarea>
  <!-- <br>First name: <input name="firstname" type="text" class="search" value="" >  -->
  <br>Last name: <input name="lastname" type="text" value="">
  <br>Age: <input name="Age" type="text" value=""> 
  <br><input type="submit" name="submit" value="Submit" >
  </form>



page.php

$con = mysql_connect("localhost","root","s1t9r86`");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("my_db", $con);
mysql_query("SET NAMES utf8");
mysql_set_charset('utf8',$con);

$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$_POST[firstname]','$_POST[lastname]','$_POST[Age]')";

if (!mysql_query($sql,$con))
  {
  die('Error: ' . mysql_error());
  }
echo "<br>1 record added";

mysql_select_db("my_db", $con);
mysql_query("SET NAMES utf8");
mysql_set_charset('utf8',$con);

$result = mysql_query("SELECT * FROM Persons");

echo "<table border='1'>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
</tr>";

while($row = mysql_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['FirstName'] . "</td>";
  echo "<td>" . $row['LastName'] . "</td>";
  echo "<td>" . $row['Age'] . "</td>";
  echo "</tr>";
  }
echo "</table>";

mysql_close($con);

Неактивен

 

#5 04.09.2011 10:49:07

evgeny
Гуру
Зарегистрирован: 04.05.2009
Сообщений: 335

Re: Занесения пробелов в таблицу mysql

Это дело не в Mysql.
Добавьте в TEXTAREA атрибут WRAP="PHYSICAL"

Неактивен

 

#6 04.09.2011 11:10:30

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

атрибут добавил но это не помогло

Неактивен

 

#7 04.09.2011 11:36:01

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

хотя только что проверил в базу заносятьса так как надо сп значит проблема с выводом думаю вечером разберусь

Неактивен

 

#8 05.09.2011 18:49:47

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

добавил функцию nl2br в page.php

$firstname = nl2br($_POST["firstname"]);

$sql="INSERT INTO Persons (FirstName, LastName, Age)
VALUES
('$firstname','$_POST[lastname]','$_POST[Age]')";

смотрел здесь http://qiq.tv/archives/324
но их способ доработки напильником у меня не работает

Неактивен

 

#9 05.09.2011 20:05:36

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Занесения пробелов в таблицу mysql

У этих ребят просто проблемы с отображением информации (видимо, стащили статью
с другого сайта). В тех местах, где у них переносы строки, в оригинальной статье
были <p>

Неактивен

 

#10 06.09.2011 08:58:16

EvgeniyST
Участник
Зарегистрирован: 04.09.2011
Сообщений: 7

Re: Занесения пробелов в таблицу mysql

сделал так :
$firstname = mysql_real_escape_string($_POST["firstname"]);

echo "<td colspan='10'><pre>" . $row['FirstName'] . "</pre></td>";

может намудрил но работает

думаю тема закрыта )

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson