Не проходит mysql_connect - ошибку не выдает

  • Автор темы Автор темы Devillio
  • Дата начала Дата начала

Devillio

Новичок
Не проходит mysql_connect - ошибку не выдает

Позвольте начинающему задать вопрос?

PHP:
$conn=mysql_connect("127.0.0.1", "root", "111")
if ($conn)
{
...
} else; print "не удалось";

все время выдает не удалось.
host, user, pass - верные, с другими выдает ошибку подключения.

в чем может быть проблема?

спасибо
 
Devillio
Если уж и учишь синтаксис PHP, то и соблюдай его
PHP:
if ($conn) 
{ 
... 
} else
{
 print "не удалось";
}
А также используй [m]mysql_error[/m] [m]die[/m]
 
а, это опять вы :). сразу вас опознал, сразу... доброе утро.

подскажите, что означает:
"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 12"

что за line 12 имеется ввиду?

P.S. делайте скидку на незнание - не ругайте сразу. Читайте Кастанеду: незнание - далеко не порок, порок - нежелание учится.
 
Devillio
так никто не ругает тебя =)
Учишься? учись.
Проблемы? поможем =)
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 12"
напиши сюда свой код с запросом...
 
вот реально спасибо :)

PHP:
        if (isset($_POST["begin"]))
        {
//             $conn=mysql_connect(DB_HOST, DB_USER, DB_PASS);
             $conn=mysql_connect("127.0.0.1", "root", "111");
             if ($conn)
             {
//              $conn=mysql_select_db(DB_NAME);
              $conn=mysql_select_db("rccs_db");
              if ($conn)
              {
              mysql_query("create table ".POQ_TABLE."
                         (poqID INT PRIMARY KEY AUTO_INCREMENT,
                          level TINYINT,
                          parent_id INT,
                          type TINYINT,
                          text1 varchar(200),
                          text2 text,
                          text3 text,
                          checked TINYINT,
                          author INT,
                          date1 DATETIME,
                          date2 DATETIME");
              } else; $errstr="ошибка DB_NAME";
            } else; $errstr= mysql_error();
         }

<html>
<head>
<link rel=STYLESHEET href="main.css" type="text/css">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>ГУ РЦЦС Волгоградской обасти</title></head>
<body bgcolor = #F1F1FF style="padding:10">
<center>
<?php
if (isset($_POST["begin"]))
{
print "<p>DB_HOST: ".DB_HOST."</p>";
print "<p>DB_USER: ".DB_USER."</p>";
print "<p>DB_PASS: ".DB_PASS."</p>";
print "<p>DB_NAME: ".DB_NAME."</p>";
if (isset($errstr)) print "<font color=red>$errstr</font>";
}
?>
<form method="POST" name="BEGIN" action="admin-int.php">
<p class=text10><b>Первоначальное заполнение базы</b><br></p>
<input type="hidden" name="begin" value="1">
<input type="submit" value="Произвести заполнение">
</form>
</center>
</body>
</html>

имя файла - admin-int.php
 
Закрывающей скобки нет в SQL запросе.
[sql]create table tablename (fieldslist)
[/sql]
 
mysql_query(...) or die(mysql_error()) используй
а так же для удобства поиска ошибок и анализа делай
$sql="твой запрос";
потом echo $sql; и анализируй
 
учту. благодарю. :)

-~{}~ 09.09.05 10:47:

я программирую на Delphi, мозг зочет работать последовательно, и вот все таки чтобы уж разобраться до конца, подскажите, почему в моем коде сначала прошло выполнение внутреннего условия, а ошибка выдалась по внешнему?
ну то есть как я вижу ситуацию:
if (усл1)
{
if (усл2)
{
} else; выполнять при невыполнении усл2
} else; выполнять при невыполнении усл1

у меня то срабатывала вторая else, хотя невыполнение как бы внутри второго условия. почему?
 
Делфя тебя и сгубила! ;)
сразу после else ставишь ;
т.е. у тебя ничего в нем не выполняется.

PHP:
} else; $errstr="ошибка DB_NAME"; 
} else; $errstr= mysql_error();
Здесь у тебя сначала выполняется $errstr="ошибка DB_NAME";
потом переписывается: $errstr= mysql_error();
 
фигасе я ламер...
offtop: /*делфя вряд ли виновна - там после else нельзя юзать ";" - это я где то у кого то узрел и решил, что такой синтаксис */.
флуду - конец.

-~{}~ 09.09.05 12:53:

не, не конец.

началось вообще неясное:
после попытки mysql_query mysql_error() содержит следующее:
"Can't create table '.\rccs_db\rccs_poq.frm' (errno: 121)"

пытался найти ответ на форуме, не нашел :(
 
Сверху