<?php
$dbhost = "localhost"; // Имя хоста БД
$dbusername = "root"; // Пользователь БД
$dbpass = ""; // Пароль к базе
$dbname = "Kadr"; // Имя базы
$dbconnect = mysql_connect ($dbhost, $dbusername, $dbpass);
if (!$dbconnect) { echo ("Не могу подключиться к серверу базы данных!"); }
if(@mysql_select_db($dbname)) { echo "Подключение к базе $dbname установлено!"; }
else die ("Не могу подключиться к базе данных $dbname!");
if ( !isset( $_GET["action"] ) ) $_GET["action"] = "showlist";
switch ( $_GET["action"] )
{
case "showlist": // Список всех записей в таблице БД
show_list(); break;
case "addform": // Форма для добавления новой записи
get_add_item_form(); break;
case "add": // Добавить новую запись в таблицу БД
add_item(); break;
case "editform": // Форма для редактирования записи
get_edit_item_form(); break;
case "update": // Обновить запись в таблице БД
update_item(); break;
case "delete": // Удалить запись в таблице БД
delete_item(); break;
default:
show_list();
}// Функция выводит список всех записей в таблице БД
function show_list()
{
$query = 'SELECT * FROM Organizacia where 1';
$res = mysql_query( $query );
echo '<h2>Список</h2>';
echo '<table border="1" cellpadding="2" cellspacing="0">';
echo '<tr><th>Код_орг</th><th>Название</th><th>Вид деят.</th><th>Фам.рук</th><th>Ред</th><th>Удл</th></tr&a mp;g t;';
while ( $item = mysql_fetch_array( $res ) )
{
echo '<tr>';
echo '<td>'.$item['kod_org'].'</td>';
echo '<td>'.$item['nazv'].'</td>';
echo '<td>'.$item['vid_deiad'].'</td>';
echo '<td>'.$item['fam_ruk'].'</td>';
echo '<td><a href="'.$_SERVER['PHP_SELF'].'?action=editform&id='.$item['kod_org'].'">Ред.</a></td>';
echo '<td><a href="'.$_SERVER['PHP_SELF'].'?action=delete&id='.$item['kod_org'].'">Удл.</a></td>';
echo '</tr>';
}
echo '</table>';
echo '<p><a href="'.$_SERVER['PHP_SELF'].'?action=addform">Добавить</a></p>';
}
// Функция формирует форму для добавления записи в таблице БД
function get_add_item_form()
{
echo '<h2>Добавить</h2>';
echo '<form name="addform" action="'.$_SERVER['PHP_SELF'].'?action=add" method="POST">';
echo '<table>';
echo '<tr>';
echo '<td>Код орг.</td>';
echo '<td><input type="text" name="kod_org" value="" /></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Название</td>';
echo '<td><input type="text" name="nazv" value="" /></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Вид деят.</td>';
echo '<td><input type="text" name="vid_deiad" value="" /></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Фам.рук.</td>';
echo '<td><input type="text" name="fam_ruk" value="" /></td>';
echo '</tr>';
echo '<tr>';
echo '<td><input type="submit" value="Сохранить"></td>';
echo '<td><button type="button" onClick="history.back();">Отменить</button></td>';
echo '</tr>';
echo '</table>';
echo '</form>';
}
// Функция добавляет новую запись в таблицу БД
function add_item()
{
$kod_org = mysql_escape_string( $_POST['kod_org'] );
$nazv = mysql_escape_string($_POST['nazv']);
$vid_deiad = mysql_escape_string( $_POST['vid_deiad'] );
$fam_ruk = mysql_escape_string( $_POST['fam_ruk']);
$query = "INSERT INTO Organizacia (nazv,vid_deiad,fam_ruk) VALUES ( '".$nazv."','".$vid_deiad."',
'".$fam_ruk."');";
mysql_query ( $query );
header( 'Location: '.$_SERVER['PHP_SELF'] );
die();
}// Функция формирует форму для редактирования записи в таблице БД
function get_edit_item_form()
{
echo '<h2>Редактировать</h2>';
$query = 'SELECT * FROM Organizacia WHERE kod_org='.$_GET['id'];
$res = mysql_query( $query );
$item = mysql_fetch_array( $res );
echo '<form name="editform" action="'.$_SERVER['PHP_SELF'].'?action=update&kod_org='.$_GET['id'].'" method="POST">';
echo '<table>';
echo '<tr>';
echo '<td>Код орг</td>';
echo '<td><input type="text" name="kod_org" value="'.$item['kod_org'].'"></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Название</td>';
echo '<td><input type="text "name="nazv" value="'.$item['nazv'].'"></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Вид д-ти</td>';
echo '<td><input type="text" name="vid_deiad" value="'.$item['vid_deiad'].'"></td>';
echo '</tr>';
echo '<tr>';
echo '<td>Фам. рук-ля</td>';
echo '<td><input type="text" name="fam_ruk" value="'.$item['fam_ruk'].'"></td>';
echo '</tr>';
echo '<tr>';
echo '<td><input type="submit" value="Сохранить"></td>';
echo '<td><button type="button" onClick="history.back();">Отменить</button></td>';
echo '</tr>';
echo '</table>';
echo '</form>';
} // Функция обновляет запись в таблице БД
function update_item()
{
$kod_org = mysql_escape_string( $_POST['kod_org'] );
$nazv = mysql_escape_string( $_POST['nazv'] );
$vid_deiad = mysql_escape_string( $_POST["vid_deiad"] );
$fam_ruk = mysql_escape_string( $_POST["fam_ruk"] );
$query = "UPDATE Organizacia SET kod_org='".$kod_org."',nazv='".$nazv."',
vid_deiad='".$vid_deiad."', fam_ruk='".$fam_ruk."'
WHERE id=".$_GET['id'];
mysql_query ( $query );
header( 'Location: '.$_SERVER['PHP_SELF'] );
die();
}
// Функция удаляет запись в таблице БД
function delete_item()
{ header( 'Location: '.$_SERVER['PHP_SELF'].'' );
$query = "delete FROM Organizacia WHERE kod_org=".$_GET['id'];
mysql_query ( $query );
header( 'Location: '.$_SERVER['PHP_SELF']);
die();
}
?>
пишет ошибку:
Warning: Cannot modify header information - headers already sent by (output started at L:\home\localhost\www\Kadr\admin.php:8) in L:\home\localhost\www\Kadr\admin.php on line 144
Это вот эта строчка
header( 'Location: '.$_SERVER['PHP_SELF']);
Исправьте пожалуйста...
Спустя 14 минут, 48 секунд (26.05.2012 - 18:08) redreem написал(а):
скорее всего достаточно сохранить файл в кодировке UTF8 БЕЗ БОМ
Спустя 55 минут, 7 секунд (26.05.2012 - 19:03) Гость_Лена написал(а):
попробовала поменять,но все тоже самое,просто буквы непонятные стали
Спустя 6 минут, 59 секунд (26.05.2012 - 19:10) vagrand написал(а):
При чем тут UTF, хидеры можно посылать пока не отослано тело документа, а у вас по всей видимости до отправки хидера редиректа уже происходит вывод какой-то информации.
Спустя 3 часа, 21 минута, 29 секунд (26.05.2012 - 22:32) Zzepish написал(а):
header можно производить ДО любого вывода информации в браузер! Даже пробел и перенос строки вне <?php ?> считается выводом информации!
<?php
header();
?>
- правильно!
<html>
<?php
header();
?> - не правильно
<?php
header();
?>
- правильно!
<html>
<?php
header();
?> - не правильно
Спустя 12 часов, 57 минут, 56 секунд (27.05.2012 - 11:30) Guest написал(а):
а тогда почему вот эта прога рабочая
<?php
// переменные для подключения к базе
$db_server = "localhost"; // адрес сервера
$db_database = "Kadr_agentstvo"; // имя базы данных
$db_username = "root"; // логин к базе
$db_password = ""; // пароль к базе данных
// определение режима (просмотр/редактирование/создание)
$mode = "show";
$method = mb_strtolower($_SERVER['REQUEST_METHOD']);
if ($_GET["mode"] != "")
{
$mode = $_GET["mode"];
}
// создание подключения к базе данных
$connection = mysql_connect($db_server,$db_username,$db_password)
or die("Could not connect: " . mysql_error());
mysql_select_db($db_database, $connection);
mysql_query("Set names cp1251;");
// просмотр списка компаний
if ($mode == "show" || $mode == "")
{
echo "<h3>Список компаний</h3>";
$result = mysql_query("SELECT * FROM Company");
echo "<table border='1'>";
while($row = mysql_fetch_array($result))
{
echo "<tr>";
echo "<td>";
echo $row['Title'];
echo "</td>";
echo "<td>";
echo "<a href='?mode=edit&id=".$row['Id']."'>Редактировать</a> ";
// echo "<a href='?mode=delete&id=".$row['Id']."' onclick=\"javascript:return confirm('Удалить?')\">Удалить</a> ";
echo "</td>";
echo "</tr>";
}
echo "</table>";
echo "<br/><br/><br/><a href='?mode=add'>Добавить компанию</a>";
}
// окончание просмотра списка компаний
// редактирование компании (отображение формы)
if ($mode == "edit" && $method == "get")
{
echo "<h3>Редактирование компании</h3>";
$result = mysql_query("SELECT * FROM Company WHERE Id=".$_GET["id"]);
echo "<form action='?mode=edit' method='post'><table>";
while($row = mysql_fetch_array($result))
{
echo "<input type='hidden' name='Id' value='".$row['Id']."'/>";
echo "<tr>";
echo "<td>Название</td>";
echo "<td><input name='Title' value='".$row['Title']."'/></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Адрес</td>";
echo "<td><input name='Address' value='".$row['Address']."'/></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Телефон</td>";
echo "<td><input name='Phone' value='".$row['Phone']."'/></td>";
echo "</tr>";
echo "<tr>";
echo "<td></td>";
echo "<td><input type='submit' value='Сохранить'/></td>";
echo "</tr>";
}
echo "</table></form>";
echo "<br/><br/><br/><a href='?mode=show'>вернуться к списку</a>";
}
// окончание редактирования компании (отображение формы)
// редактирование компании (сохранение изменений в базе)
if ($mode == "edit" && $method == "post")
{
$txtsql = "UPDATE Company SET Title='".$_POST["Title"]."', Address='".$_POST["Address"]."',
Phone='".$_POST["Phone"]."' WHERE Id=".$_POST["Id"];
mysql_query($txtsql);
header('Location:?mode=show');
}
// окончание редактирования компании (сохранение изменений в базе)
// создание компании (отображение формы)
if ($mode == "add" && $method == "get")
{
echo "<h3>Добавление компании</h3>";
echo "<form action='?mode=add' method='post'><table>";
echo "<tr>";
echo "<td>Название</td>";
echo "<td><input name='Title' value=''/></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Адрес</td>";
echo "<td><input name='Address' value=''/></td>";
echo "</tr>";
echo "<tr>";
echo "<td>Телефон</td>";
echo "<td><input name='Phone' value=''/></td>";
echo "</tr>";
echo "<tr>";
echo "<td></td>";
echo "<td><input type='submit' value='Сохранить'/></td>";
echo "</tr>";
echo "</table></form>";
echo "<br/><br/><br/><a href='?mode=show'>вернуться к списку</a>";
}
// окончание создания компании (отображение формы)
// создание компании (отображение формы)
if ($mode == "add" && $method == "post")
{
$txtsql = "INSERT INTO Company (Title, Address, Phone) VALUES ('".$_POST["Title"]."',
'".$_POST["Address"]."', '".$_POST["Phone"]."')";
mysql_query($txtsql);
header('Location:?mode=show');
}
// окончание создания компании (отображение формы)
// закрытие соединения с базой
mysql_close($connection);
?>
Спустя 14 минут, 51 секунда (27.05.2012 - 11:45) killer8080 написал(а):
Цитата (Guest @ 27.05.2012 - 11:30) |
а тогда почему вот эта прога рабочая |
На этот вопрос уже ответили многократно Читай что тебе отвечают.
Спустя 2 часа, 32 минуты, 38 секунд (27.05.2012 - 14:17) Гость_Лена написал(а):
спасибо всем