Очереднвая проблема с MSSQL

rooot

Новичок
Очереднвая проблема с MSSQL

PHP:
if ( $tab7 = 'Списанные' ) {
$otd = "otd1";
}
else if  ($tab7 = 'АС' ) {
$otd = "otd2";
}
else if  ($tab7 = 'АТХ' ) {
$otd = "otd3";
}
else if  ($tab7 = 'Бухгалтерия' ) {
$otd = "otd4";
}

......................
....................
$msquery = "INSERT INTO $otd

</PHP>
<select name="tab7">
<option value="Списанные">Списанные
<option value="АС">АС
<option value="АТХ">АТХ
<option value="Бухгалтерия">Бухгалтерия
 
Есть таблицы otd1,otd2.....otd54. Они как Вы заметили определяются методом селекта, выше был приведен код в котором не могу понять в чем ошибка, а проблемма состоит в том что, если выбрать таблицу №3 т.е. селект= 'АТХ' то почему-то данные зщаписываются все равно в таблицу №1, помогите найти ошибку.
 

DimbIch

Новичок
$tab7 = 'Списанные' - это называется присваивание!!!!
$tab7 == 'Списанные' - это сравнение

учи ПХП и ХТМЛ
правильно вот так

<select>
<option>Text</option>
</select>
 

rooot

Новичок
if ( $tab7 == 'Списанные' ) {
$otd = "otd1";
}
else if ($tab7 == 'АС' ) {
$otd = "otd2";
}
else if ($tab7 == 'АТХ' ) {
$otd = "otd3";
}
else if ($tab7 == 'Бухгалтерия' ) {
$otd = "otd4";
}


$msquery = "INSERT INTO $otd

ничего не записывает, пробовал по разному, никак ((
 

fixxxer

К.О.
Партнер клуба
PHP FAQ: Ничего не работает! Что делать???

-~{}~ 04.05.05 10:52:

Сначала ручками напиши запрос и проверь, как он работает, в Query Analyzer'e.
Потом после $msquery поставь
echo $msquery;
exit;
и добейся, чтобы значение $msquery содержало точно тот же запрос, который ты написал ручками.
 

rooot

Новичок
<?php

if ( $tab7 == 'Списанные' ) {
$otd = "otd1";
}
else if ($tab7 == 'АС' ) {
$otd = "otd2";
}
else if ($tab7 == 'АТХ' ) {
$otd = "otd3";
}
else if ($tab7 == 'Бухгалтерия' ) {
$otd = "otd4";
}

$tab1 = $_POST['tab1'];
$tab2 = $_POST['tab2'];
$tab3 = $_POST['tab3'];
$tab4 = $_POST['tab4'];
$tab5 = $_POST['tab5'];
$tab6 = $_POST['tab6'];
$tab7 = $_POST['tab7'];
$tab8 = $_POST['tab8'];
$tab9 = $_POST['tab9'];
$tab10 = $_POST['tab10'];
$tab11 = $_POST['tab11'];
$tab12 = $_POST['tab12'];
$tab13 = $_POST['tab13'];
$tab14 = $_POST['tab14'];
$tab15 = $_POST['tab15'];
$tab16 = $_POST['tab16'];
$tab17 = $_POST['tab17'];
$tab18 = $_POST['tab18'];
$tab19 = $_POST['tab19'];
$tab20 = $_POST['tab20'];
$tab21 = $_POST['tab21'];
$tab22 = $_POST['tab22'];
$tab23 = $_SERVER['PHP_AUTH_USER'];
$tab24 = $_POST['tab24'];


$msconnect=mssql_connect("localhost","root","777");
$msdb=mssql_select_db("sklad",$msconnect);
$msquery = "INSERT INTO $otd (tab1,tab2,tab3,tab4,tab5,tab6,tab7,tab8,tab9,tab10,tab11,tab12,tab13,tab14,tab15,tab16,tab17,tab18,tab19,tab20,tab21,tab22,tab23,tab24) VALUES ('$tab1','$tab2','$tab3','$tab4','$tab5','$tab6','$tab7','$tab8','$tab9','$tab10','$tab11','$tab12','$tab13','$tab14','$tab15','$tab16','$tab17','$tab18','$tab19','$tab20','$tab21','$tab22','$tab23','$tab24')";

mssql_close($msconnect);

?>
весь скрипт
 

rooot

Новичок
fixxxer
да все работает, запрос правильный, проблема в том что $otd не хочет превращятся в otd1 или otd2 ..... в зависимости от селекта

-~{}~ 04.05.05 10:56:

$msresults= mssql_query($msquery);
братва забыл )))
 

fixxxer

К.О.
Партнер клуба
PHP:
...($tab7 == 'Бухгалтерия' ) {
$otd = "otd4";
} else {
  echo "Неизвестное значение tab7: $tab7";
  exit;
}
Вообще, учись сам отлаживать свои скрипты, еще раз ссылка: PHP FAQ: Ничего не работает! Что делать???.
Если бы ты воспользовался рекомендацией из этого faq и установил error_reporting(E_ALL) , то сразу бы увидел, в чем дело.
 

rooot

Новичок
Warning: mssql_query(): message: Line 1: Incorrect syntax near '('. (severity 15) in c:\inetpub\wwwroot\add.php on line 45

Warning: mssql_query(): Query failed in c:\inetpub\wwwroot\add.php on line 45
после добавления $msresults= mssql_query($msquery);

-~{}~ 04.05.05 11:05:

все братва дошло
 

bgm

&nbsp;
Автор оригинала: rooot
if ( $tab7 == 'Списанные' ) {
$otd = "otd1";
}
else if ($tab7 == 'АС' ) {
$otd = "otd2";
}
else if ($tab7 == 'АТХ' ) {
$otd = "otd3";
}
else if ($tab7 == 'Бухгалтерия' ) {
$otd = "otd4";
}
1) Перед IF посмотри значение $tab7 - [ echo $tab7; ]

2) Если работаешь с $_POST - посмотри что у тебя в $_POST находится и вообще - почитай как работать с HTML формами - http://ru2.php.net/manual/ru/language.variables.external.php

3) Поучись, как вместо такой кучи "ифов" пользоваться другими конструкциями - к примеру - switch - http://ru2.php.net/manual/ru/control-structures.switch.php
 
Сверху