[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: как поставить переменную в имя post переменной
PHPLIVE
Доброго времени , вот часть кода, суть такая есть переменная $type ="<h4>Имя таблицы<input type = 'text' size='10' maxlength='10' name='tablename".$i."'> Как мне присвоить ей переменную в имя с циклом for ? $_POST['tablename $I']во втором коде ?
<?php
if(isset($_POST['fields'])) {
$field = $_POST['fields'];
$base = $_POST['base'];
$num = $_POST['fields'];
for($i = 0 ; $i < $num; $i++){
$type ="<h4>Имя таблицы<input type = 'text' size='10' maxlength='10' name='tablename".$i."'><br>
Тип таблицы <select name = 'typetable"
.$i."'><option>TINYINT</option><option>SMALLINT</option><opti on>MEDIUMINT</option><option>INT</option>
<option>BIGINT</option>
<option>BOOLEAN</option><option>DECIMAL</option><option>FLOAT</opti on><option>DOUBLE </option><option>CHAR </option>
<option>VARCHAR </option><option>BLOB</option><option>TEXT</option><option>MEDIUM BLOB</option><option>MEDIUMTEXT</option><option>LONGTEXT</option>
<option>LONGBLOB</option><option>ENUM</option><option>SET</option&a mp;g t;
<option>TIME</option><option>DATATIME</option><option>TIMESTAMP</op tion><option>YEAR (M)</option></select>( )<input type='text'name='type"
.$i."()' size='5' value = '()'>
<br>
AUTO_INCREMENT<input type='checkbox'value ='AUTO_INCREMENT' name='at"
.$i."'> BINARY<input type='checkbox'value ='BINARY' name='at1".$i."'>
NULL<input type='checkbox'value ='NULL' name='at2"
.$i."'>NOT NULL<input type='checkbox'value ='NOT NULL' name='at3".$i."'>
PRIMARY KEY <input type='checkbox'value ='PRIMARY KEY' name='at4"
.$i."'>( )<input type='text'name='type1".$i."()' size='5' value = '()'>
UNIQUE<input type='checkbox'value ='UNIQUE' name='at6"
.$i."'>( )<input type='text'name='type2".$i."()' size='5' value = '()'>INDEX<input type='checkbox'value ='INDEX' name='at7".$i."'>
( )<input type='text'name='type3"
.$i."()' size='5' value = '()'>
DEFAULT<input type='checkbox'value ='DEFAULT' name='at8"
.$i."'>( )<input type='text'name='type4".$i."()' size='5' value = '()'>";
echo $type; } echo "<input type='hidden' name='base' value='$base'><input type='hidden' name='field' value='$field'><input type='submit' value='создать'>";}
?>
<?php

if(isset($_POST['field'])) {
$field = $_POST['fields'];
$base = $_POST['base'];
$link_id = mysql_connect('localhost','root','elephant');
mysql_select_db($base, $link_id);
for($i = 0 ; $i < $field; $i++) {

$name = "tablename" + "$i";
echo $_POST[$name];echo $_POST[tablename0]; }} // $_POST[tablename0] - там где нуль, мне нужно поставить переменную цикла for $i как мне сделать ?

?>




Спустя 10 минут, 10 секунд (6.07.2012 - 20:03) rooor написал(а):
$_POST['tablename'.$i]

Спустя 15 минут, 5 секунд (6.07.2012 - 20:18) inpost написал(а):
name="array[]"

получишь массив: $_POST['array'][] <- и переберёшь через foreach.

Спустя 20 секунд (6.07.2012 - 20:19) PHPLIVE написал(а):
спасибо, теперь буду знать , достаточно то что написал ROOR, только что проверил работает,

Спустя 12 минут, 21 секунда (6.07.2012 - 20:31) inpost написал(а):
PHPLIVE
Достаточно - да! Профессионально - нет. Группировать данные необходимо для лучшего контроля.

Спустя 1 день, 21 час, 18 минут, 28 секунд (8.07.2012 - 17:50) PHPLIVE написал(а):
in post , группировать данные в массив , я согласен с тобой что удобно. Вообще я задумал написать программу для mysql , знаю что такие есть , но мне хочется 1-ое сделать её удобнее и функциональнее , выкладываю то что есть на сегодняшний момент , если у вас есть какиенибудь пожелания, замечания , внимательно с ними ознакомлюсь.
<html><head>
<meta
http-equiv="content-type" content="text/html; charset=UTF-8"><title>программа управления базой данных Mysql</title>
</head><body>
<h1>
программа управления базой данных Mysql</h1>
<table
border="2"><tr><td>
<form
method="POST" action="nbase.php">Создать базу</td><td><input type="text" size="10" maxlength="20" name="newbase"></td><td>
<input
type="submit" value='создать'> </td></form></tr>

<tr><form
method="post" action="nbase.php">
<td>
Выбрать базу<select name="base">
<?php
error_reporting(0);
$link_id = mysql_connect("localhost","root", "elephant");
if(!$link_id)die("ошибка подключения");
$result = mysql_list_dbs($link_id);
while ($data_base = mysql_fetch_row($result))
{echo " <option>$data_base[0]</option>"; mysql_close($link_id);}?></select></td>
<td>
Удалить базу</td>
<td><input
type="checkbox" name="dropbase"></td><td>
показать таблицы </td><td><input type="checkbox" name="showtables" ></td><td>
создать таблицу</td><td><input type="checkbox" name='createtab'></td></tr><tr><td>
<input
type="submit" name='posted' value="ввод"></form></td></tr></table><hr>
<?php
// ПОКАЗАТЬ ТАБЛИЦЫ
error_reporting(0);
$database = $_POST['base'];
global $database;
$link_id = mysql_connect("localhost","root", "elephant"); if(!$link_id)die("ошибка подключения");
if(isset($_POST['showtables'])) {
mysql_select_db($database, $link_id);
$result_t = mysql_list_tables($database, $link_id);
while ($tables = mysql_fetch_row($result_t) ){
echo "<td><form method='POST' action='nbase.php'><input type='hidden' name='base1' value='$database'>
<input type='hidden' name='table' value='
$tables[0]'><input type='submit' name ='posted' value='$tables[0]'></form>"." ";
}mysql_close($link_id);} //конец

?>
<?php

if(isset($_POST['dropbase'])) {
$link_id = mysql_connect("localhost","root", "elephant"); if(!$link_id)die("ошибка подключения");
if(mysql_query("DROP DATABASE $database", $link_id)) { Echo"база $database удалена <a href='nbase.php'>обновить данные</a>";}}
mysql_close($link_id);?>
<?php


$link_id = mysql_connect("localhost","root", "elephant"); if(!$link_id)die("ошибка подключения");
if(isset($_POST['newbase'])){
$name = $_POST['newbase'];
if(mysql_query("CREATE DATABASE $name ", $link_id))
{echo"<H3 align='center'>база $name создана<h3><a href='nbase.php'>обновить данные</a>"; mysql_close($link_id);} else {echo "произошла ошибка";}}

?>

<?php

$tab = $_POST['table'];
$bas = $_POST['base1'];
if(isset($_POST['posted'])) {
$link_id = mysql_connect("localhost","root", "elephant");
mysql_select_db($bas, $link_id);
$result_x = mysql_query("DESC $tab", $link_id);
while($desc = mysql_fetch_row($result_x)) {
echo " $desc[0]- $desc[1]- $desc[2]- $desc[3] - $desc[4]<br>";}}
?>

<?php
// СОЗДАНИЕ ТАБЛИЦЫ ШАГ - 1ЫЙ
if(isset($_POST['createtab'])) {
$database = $_POST['base'];
echo "<form action ='nbase1.php' method='post'><h4>Колличество полей<input type = 'text' size='5' maxlength='10' name='fields'><br>
Имя таблицы <input type = 'text' size='10' maxlength='12' name='nametab'>;
<input type='hidden' name='base' value='
$database'><input type='submit' value='старт'></form></h4>";}
?>
</body>
</html>

вторая страничка проги
<HTML><head>
<meta
http-equiv="content-type" content="text/html; charset=WINDOWS-1251"> <title></title></head>
<body>
<form
action ='nbase1.php' method='post'>
<?php

if(isset($_POST['fields'])) {
$field = $_POST['fields'];
$base = $_POST['base'];
$num = $_POST['fields'];
$nametab = $_POST['nametab'];

for($i = 0 ; $i < $num; $i++){
echo "таблица $nametab";
$type ="<h4>Имя поля <input type = 'text' size='10' maxlength='10' name='tablename".$i."'><br>
Тип таблицы <select name = 'typetable"
.$i."'><option>TINYINT</option><option>SMALLINT</option><option>ME DIUMINT</option><option>INT</option>
<option>BIGINT</option>
<option>BOOLEAN</option><option>DECIMAL</option><option>FLOAT</opti on><option>DOUBLE </option><option>CHAR </option>
<option>VARCHAR </option><option>BLOB</option><option>TEXT</option><option>MEDIUM BLOB</option><option>MEDIUMTEXT</option><option>LONGTEXT</option>
<option>LONGBLOB</option><option>ENUM</option><option>SET</option&g t;
<option>TIME</option><option>DATATIME</option><option>TIMESTAMP</op tion><option>YEAR (M)</option></select>( )<input type='text' name='type"
.$i."' size='5' value = ''>
<br>
AUTO_INCREMENT<input type='checkbox'value ='AUTO_INCREMENT' name='at"
.$i."'> BINARY<input type='checkbox'value ='BINARY' name='at1".$i."'>
NULL<input type='checkbox'value ='NULL' name='at2"
.$i."'>NOT NULL<input type='checkbox'value ='NOT NULL' name='at3".$i."'>
PRIMARY KEY <input type='checkbox'value ='PRIMARY KEY' name='at4"
.$i."'>( )<input type='text'name='sym0".$i."' size='5' >
UNIQUE<input type='checkbox'value ='UNIQUE' name='at6"
.$i."'>( )<input type='text'name='sym1".$i."' size='5' >INDEX<input type='checkbox'value ='INDEX' name='at7".$i."'>
( )<input type='text'name='sym3"
.$i."'>
DEFAULT<input type='checkbox'value ='DEFAULT' name='at8"
.$i."'>( )<input type='text'name='sym".$i."' size='5' value = >";
echo $type; } echo "<input type='hidden' name='base' value='$base'><input type='hidden' name='nametab' value='$nametab'><input type='hidden' name='field' value='$field'><input type='submit' value='создать'>";}
?>
<?php

if(isset($_POST['field'])) {
$field = $_POST['field'];
$base = $_POST['base'];
$nametab =$_POST['nametab'];
for($i = 0 ; $i < $field; $i++) {
$field_name = $_POST['tablename'.$i];
$field_type = $_POST['typetable'.$i];
$char = $_POST['type'.$i];
$UNI_char = $_POST['sym1'.$i];
$AUTO = $_POST['at'.$i];
$BIN = $_POST['at1'.$i];
$NULL = $BIN = $_POST['at2'.$i];
$NOT_NULL = $_POST['at3'.$i];
$UNI = $_POST['at6'.$i];
$INDEX = $_POST['at7'.$i];
$INDEX_char = $_POST['sym3'.$i];
$DEFAULT = $_POST['at8'.$i];
$DEF_char = $_POST['sym'.$i];
$PRYM = $_POST['at4'.$i];
$PRYM_char = $_POST['sym0'.$i];
$link_id = mysql_connect('localhost','root','elephant');
mysql_select_db($base, $link_id);
mysql_query("CREATE TABLE $nametab ( $field_name $field_type $char $AUTO $BIN $NULL $NOT_NULL $UNI $UNI_char $INDEX $INDEX_char $DEFAULT $DEF_char $PRYM $PRYM_char )", $link_id);
mysql_query("ALTER TABLE $nametab ADD $field_name $field_type $char $AUTO $BIN $NULL $NOT_NULL $UNI $UNI_char $INDEX $INDEX_char $DEFAULT $DEF_char $PRYM $PRYM_char ",$link_id );


echo "это ещё не конец"; }}

?>


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

Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.