Jump to content
  • 0

Форма под формой баттон, при нажатии на баттон такая же форма.


j1gs4w88
 Share

Question

Здравствуйте! Я новичёк в создании сайтов. Обучаюсь по дискам Евгения Попова. Создаю сайт в Adobe Dreamweaver CS4. Прошу прощения если тему поместил немножко не в тот раздел.

Вопрос такой. К зачёту в универе создаётся простейшая модель регистрационной формы спортсмена на соревнования. Имеется БД с тремя связанными таблицами спортсмен тренер спортсменТренер.

На странице форма

Спортсмен

firstname:

lastname:

Тренер

firstname:

lastname:

Button add trainer при нажатии на этот баттон появляется ещё одна колонка тренер а баттон сдвигается ниже неё(типа у спортсмена может быть 2 тренера и больше) КАК это можно реализовать???

Button register при нажатии на этот баттон форма идёт в файл обработчик и данные заносятся в БД

ЗЫ Спасибо!

Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

Извиняюсь за ламерские вопросы. Мою тренерскую форму нужно помещать между тегами div? вот что я хотел бы получить после нажатия баттона add trainer

Спортсмен

firstname:

lastname:

Тренер

firstname:

lastname:

Тренер

firstname:

lastname:

Button add trainer и так далее при нажатии этого баттона

Button register

Ввёл ваш код пока что то не получается то что я задумал.

Спасибо.

Link to comment
Share on other sites

  • 0

Можно и так:

<form action="#" method="post">
<div style="margin: 10px; padding: 20px; border: 1px solid #000; width: 300px;">
<strong>Sportsman</strong><br />
first name: <input type="text" size="15" /><br />
last name: <input type="text" size="15" />
</div>
<div id="trainer" style="margin: 10px; padding: 20px; border: 1px solid #000; width: 300px;">
<strong>Trainer</strong><br />
first name: <input type="text" size="15" /><br />
last name: <input type="text" size="15" />
</div>
<input type="button" value="Add trainer" onclick="this.parentNode.insertBefore(document.getElementById('trainer').cloneNode(10), this);" />
</form>

Link to comment
Share on other sites

  • 0

Придется выносить действия в отдельный скрипт. Но оно и правильнее.

<script type="text/javascript">
function addTrainer(btnObj) {
var newTrainer = document.getElementById('trainer').cloneNode(10);
var fields = newTrainer.getElementsByTagName("input");
for (var i = 0; i < fields.length; i++) {
fields[i].value = "";
}
btnObj.parentNode.insertBefore(newTrainer, btnObj);
}
</script>

........................

<form action="#" method="post">
<div style="margin: 10px; padding: 20px; border: 1px solid #000; width: 300px;">
<strong>Sportsman</strong><br />
first name: <input type="text" size="15" /><br />
last name: <input type="text" size="15" />
</div>
<div id="trainer" style="margin: 10px; padding: 20px; border: 1px solid #000; width: 300px;">
<strong>Trainer</strong><br />
first name: <input type="text" size="15" /><br />
last name: <input type="text" size="15" />
</div>
<input type="button" value="Add trainer" onclick="addTrainer(this);" />
</form>

Link to comment
Share on other sites

  • 0

Народ помогите лпиз, моя задумка не работает. Хочу чтобы с формы данные корректно заносились в БД. Хочу две связанные таблицы Сотрудник Квалификация сотрудникКвалификация. Чтобы 1 сотрудник имел несколько квалификаций. Форма готова. Данные не заносятся в связывающую таблицу в БД, а также если добавлять квалификацию(скилл) то из всех скиллов в БД идёт только последний. Как правильно написать обработчик?

ЗЫ Спортсмен тренер уже не нужно. Вот мой код обработчика.

<?php 
include ("bd.php");/*Соединяемся с базой данных*/
if (isset($_POST['employeeFirstName'])) {$employeeFirstName = $_POST['employeeFirstName']; if ($employeeFirstName == '') {unset($employeeFirstName);}}
if (isset($_POST['employeeLastName'])) {$employeeLastName = $_POST['employeeLastName']; if ($employeeLastName == '') {unset($employeeLastName);}}
if (isset($_POST['skillName'])) {$skillName = $_POST['skillName']; if ($skillName == '') {unset($skillName);}}
?>



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Обработчик</title>
</head>
<body>
<table width="690" border="1" align="center">
<tr>
<td><!--Подключаем шапку сайта-->
<? include("header.php"); ?></td>
</tr>
<tr>
<td><?php
if (isset($employeeFirstName) && isset($employeeLastName) && isset($skillName))
{/* Здесь пишем, что можно заносить информацию в базу */
$result = mysql_query ("INSERT INTO employee (employeeFirstName,employeeLastName) VALUES ('$employeeFirstName','$employeeLastName')");

$result = mysql_query ("INSERT INTO skills (skillName) VALUES ('$skillName')");


$result = mysql_query ("INSERT INTO employeeSkills VALUES (employeeID,skillID) WHERE 'employee.employeeID=employeeSkills.employeeID','skill.skillID=employeeSkills.skillID'");



if ($result == 'true') { echo "<p>Данные занесены в базу!</p>";}
else { echo "<p>Данные не занесены в базу!</p>";}
}

else
{ echo "<p>Вы ввели не всю информацию, поэтому данные не занесены в базу!</p>";}

?></td>
</tr>
</table>







</body>
</html>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy