We use cookies
We use cookies to optimize our website. By continuing to browse the site, you agree to our use of cookies.
Control panel
  • Русский
  • Українська
  • English
  • UAH
  • USD
  • RUB
  • EUR
  • 0-800-307-307 Hotline
  • +38 (044) 392-74-33 Kiev
  • +38 (057) 728-39-00 Kharkiv
  • +38 (056) 794-38-31 Dnipro
  • +38 (032) 229-58-93 Lviv
  • +38 (048) 738-57-70 Odessa
  • +38(093) 170-15-42  Life
  • +38 (067) 400-88-44 Kievstar
  • +1(888)393-24-51  USA, Toll free
  • +44(131)507-01-14  Great Britain
  • +7 (499) 348-28-61 Moscow

MySQL. MySQL запись данных через PHP


oleg.zalozhenkov
7 years old
0
MySQL запись данных через PHP

Есть код

<?php
$pattern = "#^[a-z0-9_\.-]+@[a-z0-9_-]+\.([a-z0-9]{1,6}\.)?[a-z]{2,6}$#i";

$firstn = mysql_real_escape_string(trim($_POST['firstn']));
$lastn = mysql_real_escape_string(trim($_POST['lastn']));
$email = mysql_real_escape_string(trim($_POST['email']));
$country = mysql_real_escape_string(trim($_POST['country']));


$link = mysql_connect("localhost", "root", "") or die("No connect to Server");
mysql_query("SET NAMES utf8", $link) or die("Cant set charset");
mysql_select_db("tech") or die("No DATABASE SELECTED");

$query = "SELECT email FROM jos_clients WHERE email = '$email' LIMIT 1";
$res = mysql_query($query, $link) or die(mysql_error());
if(mysql_num_rows($res) > 0){

        $query =        "UPDATE jos_clients
                                        SET firstname='$firstn', lastname='$lastn', country='$country'
                                WHERE email= '$email'
                                "
;
                               
        $result = mysql_query($query, $link);
        if(mysql_affected_rows() == 1){   
                echo 'Your E-mail is already registered';
        }else{
                echo 'Your E-mail is already registered, but not updated' . $query;
        }       
               
}else{

        $query = "INSERT INTO jos_clients (
                                firstname,
                                lastname,
                                email,
                                country
                                )
                        VALUES (
                                '$firstn',
                                '$lastn',
                                '$email',
                                '$country'
                        )"
;
        $result = mysql_query($query, $link) or die(mysql_error());
        if (!$result)
                echo "ERROR DATABASE";
        else   
                echo 'Thank you very much for the registration';
}
mysql_close($link);
exit;


?>

У меня на стандартном Денвере все работает и записывает данные
Как только переношу на хостинг - строчку вставляет, но данные в поля не записывает. Ошибку не выдает
прошу помочь

rudenko
7 years old
0

А что выведет, если напечатать echo $query; ? Поступает ли в базу данных правильный запрос?

oleg.zalozhenkov
7 years old
0

Все разобрался. Спасибо за совет. Ошибка очень простая. Дело в том, что до вызова mysql_connect()

следующая сттрока
$firstn = mysql_real_escape_string(trim($_POST['firstn']));
выдает $firstn выдает пустое значение.

Если эту строчку поставить после mysql_connect() , то будет правильное значение.

Only registered users.