динамический GetSQLValueString

<?php require_once('../Connections/database.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "",
$theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}

$theValue = function_exists("mysql_real_escape_string") ?
mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}

$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}


if(!isset($_SESSION["A"])){
session_start();
}
$ID=$_SESSION["A"];
echo $ID;

if(!isset($_SESSION["B"])){
session_start();
}
$dbname=$_SESSION["B"];
echo $dbname;

if(!isset($_SESSION["C"])){
session_start();
}
$overall=$_SESSION["C"];
echo $overall;

$databasename=$dbname.$ID;

echo $databasename;


$question = '';
for( $i = 1; $i <= $overall; $i++ ) {
$question .= "P$i" ;
if ($i!=$overall)
$question .=",";
}

$question2= '';
for( $i2 = 1; $i2 <= $overall; $i2++ ) {
$question2 .= "%s" ;
if ($i2!=$overall)
$question2 .=",";
}

Как я могу сделать GetSQLValue струна дианамич. Имею ввиду, что если $overall 5, то GetSQLValuestring показывает только P5, потому что сейчас я создаю открытый вопрос, как Google.

Я сделал создание базы данных, но сейчас я застрял в этой точке, где я хочу вставить данные в новую базу данных, которую я создаю. $ Total — это число вопросов, которые пользователь хочет создать, — я попробовал использовать это:

for( $x=1 ; $x<=$overall ; $x++){
echo ' GetSQLValueString($_POST[P'.$x.'], "text")';
if($x!=$overall)
echo ",";
}

Но это не сработало.

Я ценю всю помощь, которую я могу получить

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
$insertSQL = sprintf("INSERT INTO soalan (id, $question) VALUES (%s,$question2)",
GetSQLValueString($_POST['id'], "int"),
GetSQLValueString($_POST['P1'], "text"),
GetSQLValueString($_POST['P2'], "text"),
GetSQLValueString($_POST['P3'], "text"),
GetSQLValueString($_POST['P4'], "text"),
GetSQLValueString($_POST['P5'], "text"),
GetSQLValueString($_POST['P6'], "text"),
GetSQLValueString($_POST['P7'], "text"),
GetSQLValueString($_POST['P8'], "text"),
GetSQLValueString($_POST['P9'], "text"),
GetSQLValueString($_POST['P10'], "text"),
GetSQLValueString($_POST['P11'], "text"),
GetSQLValueString($_POST['P12'], "text"),
GetSQLValueString($_POST['P13'], "text"));

mysql_select_db($database_database, $database);
$Result1 = mysql_query($insertSQL, $database) or die(mysql_error());

$insertGoTo = "function1.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Untitled Document</title>
</head>

<body>

<form method="post" name="form1" action="<?php echo $editFormAction; ?>">
<table align="center">
<tr valign="baseline">
<td nowrap align="right">Id:</td>
<td><input type="" name="id" value="<?php echo $ID; ?>" size="32"></td>
</tr>
<?php
for($x=1;$x<=$overall;$x++){

echo "<tr valign='baseline'>";
echo "<td nowrap align='right'>$x:</td>";
echo "<td><input type='text'
name='P$x' value='' size='32'></td>";
echo "</tr>";

}
?>
<tr valign="baseline">
<td nowrap align="right">&nbsp;</td>
<td><input type="submit" value="Insert record"></td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="form1">
</form>
<p>&nbsp;</p>
</body>
</html>

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector