Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > изменить текст программы


Автор: Yan1 25.11.2011, 11:08
первый файл:
<html> <body> <h1> Test Search</h1>

<form action="file1.php" method="post">
 <br>

<select name="searchtype">
  <option value="test1"> по полю test1
  <option value="test2"> по полю test2
</select> <br>

<br>

<input name="searchterm" type=text> <br>
<input type=submit value="Поиск">

</form> </body> </html>


И второй файл:
<html>
<head>
<title> Test Search Results</title>
</head>
<body>
<h1> Test Search</h1>
<? 

$searchtype = isset($_POST['searchtype']) ? $_POST['searchtype'] : "";
$searchterm = isset($_POST['searchterm']) ? $_POST['searchterm'] : "";

trim($searchterm);

if (!$searchtype || !$searchterm) {
 echo "Вы не заполнили все поля для поиска. Вернитесь обратно и заполните все поля.";
 exit;
}

$searchtype = addslashes($searchtype);
$searchterm = addslashes($searchterm);

$db = mysql_pconnect("localhost","root","");

if (!db) {
  echo "Ошибка: не могу соединиться с базой данных. Попробуйте еще раз позднее.";
exit;
}

mysql_select_db("test");

$query = "select * from test where ".$searchtype." like '%".$searchterm."%' ";
$result = mysql_query($query);

$num_results = mysql_num_rows ($result);
echo "<p> Возвращено строк: ".$num_results."</p> ";

for ($I = 0; $I < $num_results; $I=$I+1) 
{
  $row = mysql_fetch_array ($result);

  echo "<p> <strong> ".($I + 1)." </strong>";

  echo "<p) Поле1: ";
  echo htmlspecialchars( stripslashes($row["test1"]));

  echo " <br> Поле2: ";
  echo htmlspecialchars( stripslashes($row["test2"]));
}

?>

</body>
</html>


Надо скорректировать параметры доступа к базе данных так, чтобы они обращались к таблице, созданной на этапе 2. Просмотреть результат их работы.

Далее нужно изменить текст программы так, чтобы по выбору пользователя можно было получить либо количество записей в таблице, либо минимальное/максимальное значения целочисленного поля. 
Добавить еще одну форму, с помощью которой можно было бы добавлять записи в таблицу.

Господа phpники без вас никак не справиться, очень нужна помощь!

Автор: bobik02 25.11.2011, 15:23
А что у вас не получается ?  smile 

Автор: -=Ustas=- 25.11.2011, 21:25
Цитата(Yan1 @  25.11.2011,  11:08 Найти цитируемый пост)
Господа phpники без вас никак не справиться, очень нужна помощь! 


Yan1, ну вы давайте, начинайте, а мы подхватим и поможем.

Автор: Yan1 25.11.2011, 23:42
<html>
<head>
<title> FIO Search Results</title>
</head>
<body>
<h1> FIO Search</h1>
<? 

$db = mysql_pconnect("localhost","root","");

if (!db) {
  echo "Ошибка: не могу соединиться с базой данных. Попробуйте еще раз позднее.";
exit;
}

mysql_select_db("yan11");

$result = mysql_query("select count(*) from fio where ");
{
  echo "<p) getcount: ";
  echo htmlspecialchars( $result["getcount"]);
}
?>

</body>
</html>

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

файл первый:

<html> <body> <h1> FIO Search</h1>

<form action="ex58.php" method="post">
Выберите тип поиска: <br>

<select name="searchtype">
  <option value="getcount"> getcount
  <option value="max"> max
</select> <br>

Подвердить:<br>

<input type=submit value="Enter">

</form> </body> </html>

Добавлено через 2 минуты и 57 секунд
например getcount = .... как это сделать?

Автор: ksnk 26.11.2011, 11:34
Yan1, Для начала нужно обнаружить в окне редактора сообщений кнопочку "Код". Потом обнаружить, что можно отредактировать свое сообщение. Потом оформить сообщение, выделяя кусочки кода с помощью этой кнопочки. 
Возможно, после этого ответы будут более содержательны. 

Автор: Yan1 26.11.2011, 14:13
файл первый
Код

  <html> <body> <h1> FIO Search</h1>

<form action="ex2.php" method="post">
Выберите тип поиска: <br>

<select name="searchtype">
  <option value="get_count"> get_count
  <option value="min\max"> min\max
</select> <br>

Введите строку поиска:<br>

<input type=submit value="enter">

</form> </body> </html>


файл второй,
Код

 html>
<head>
<title> FIO Search Results</title>
</head>
<body>
<h1> FIO Search</h1>
<? 

$db = mysql_pconnect("localhost","root","");

if (!db) {
  echo "Ошибка: не могу соединиться с базой данных. Попробуйте еще раз позднее.";
exit;
}

mysql_select_db("ruslan11");
$q = mysql_query("select count(*) from fio");
$rows = mysql_num_rows($q);
$fields = mysql_num_fields($q);

echo "<pre>";
  for ($c=0; $c<$rows; $c++) 
{
     for ($cc=0; $cc<$fields; $cc++) 
{
     echo mysql_result($q, $c, $cc)."\t";
     echo "\n";
     }
  }


?>

</body>

я никак не могу вывести результат запроса, подскажите пожалуйста как это сделать

Автор: MoLeX 26.11.2011, 16:32
отображение ошибок включите

Автор: The_Aleksey 30.11.2011, 17:50
по поводу вывода из базы, мне кажется можно попробовать так:

Код

$q = mysql_query("select count(*) as c from fio");
while ($row = mysql_fetch_assoc($q)) {
    echo $row['c'].'<br>';
}

Автор: MoLeX 30.11.2011, 19:46
The_Aleksey, и что это за такое? зачем тут while и mysql_fetch_assoc?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)