我正在插入以下表格中的信息:
<form method="post" role="form">
<div id="solutionTitleValidation" class="form-group">
<label class="control-label" for="solutionTitle">Título de la Solución</label>
<input type="text" class="form-control" name="solutionTitle" id="solutionTitle" autocomplete="off" aria-autocomplete="none" placeholder="título">
</div>
<div id="solutionTagsValidation" class="form-group">
<label class="control-label" for="solutionTags">Tags de la Solución</label>
<input type="text" class="form-control" name="solutionTags" id="solutionTags" autocomplete="off" aria-autocomplete="none" placeholder="tags de la solución">
<p class="help-block"><strong>Nota: </strong>Las tags no pueden llevar espacios, es solamente una palabra, y se separan por comas. Ej.: renweb, internet, conexión, etc. <strong>Se recomienda al menos 4</strong> por solución para mayor efectividad a la hora de búsqueda, y un máximo de 6.</p>
</div>
<div id="solutionDescriptionValidation" class="form-group">
<label class="control-label" for="solutionDescription">Descripción de la Solución</label>
<textarea maxlength="140" class="form-control" name="solutionDescription" id="solutionDescription" placeholder="descripción" rows="4" style="resize: none;"></textarea>
<p class="help-block"><strong>Nota: </strong>La descripción no puede ser mayor a 140 carácteres.</p>
</div>
<div class="form-group">
<label class="control-label" for="solutionBody">Contenido de la Solución</label>
<textarea class="form-control" name="solutionBody" id="solutionBody" placeholder="contenido de la solución" rows="10" style="resize: none;"></textarea>
<p class="help-block"><strong>Nota: </strong>Para subir imágenes, deberán ser subidas primero a otro servidor. Puede utilizar <a href="http://imageshack.us/">Image Shack</a> como servidor de fotos. Luego hacer click en el botón de insertar imagen.</p>
</div>
<hr>
<a href="index.php" class="btn btn-default pull-left">Menú Principal</a>
<button type="submit" name="solutionEnter" class="btn btn-success pull-right">Ingresar Solución</button>
<div class="clearfix"></div>
</form>
进入mysql数据库。我在一个名为functions.php的php文件上打开了我的连接字符串,我使用require_once'functions.php'将它包含在这个文件中;
我正在使用的PHP代码如下:
if(isset($_POST['solutionEnter'])){
if(empty($_POST['solutionTitle']) || empty($_POST['solutionTags']) || empty($_POST['solutionDescription']) || empty($_POST['solutionBody'])){
$errorMessage = '<div class="alert alert-danger alert-dismissable">';
$errorMessage .= '<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>';
$errorMessage .= '<strong>Error!</strong> Uno o más de los campos solicitados en el formulario se dejó vacío. Por favor llene la información que se le solicita.</div>';
}
else {
$title = $_POST['solutionTitle']; $tags = array_map('trim', explode(',',$_POST['solutionTags']));
$description = $_POST['solutionDescription']; $content = $_POST['solutionBody'];
//query para insertar los datos dentro en la base de datos
//generamos un valor unico y lo asignamos a una variable
$uniqueID = "SELECT UUID() as UID";
$getUniqueID = $DBConnect->query($uniqueID);
$result = $getUniqueID->fetch_assoc();
//Ejectura el query e insertar el UUID generado
$insertSolutionQuery = sprintf("INSERT INTO solution VALUES('%s', '%s', '%s', '%s')", $result['UID'], $title, $description, $content);
$DBConnect->query($insertSolutionQuery);
echo $insertSolutionQuery;
$insertTagIntermediateQuery = sprintf("INSERT INTO solution_tags_intermediate VALUES('%s')", $result['UID']);
$DBConnect->query($insertTagIntermediateQuery);
echo $insertTagIntermediateQuery;
foreach($tags as $tag){
$insertTagsQuery = sprintf("INSERT INTO solution_tags values('%s')", $tag);
$DBconnect->query($insertTagsQuery);
echo $insertTagsQuery;
}
}
}
在将数据插入数据库之前,我确认没有任何内容为空。
稍后我将$ _POST []的值分配给我可以轻松操作的变量。
之后,我开始插入查询。
问题是只有查询号($ insertSolutionQuery)执行插入,查询号2($ insertTagIntermediateQuery)没有,查询号3($ insertTagsQuery)也没有。
此外,查询号3会显示一条PHP错误,其中包含以下内容:
=&gt;未定义的变量:第33行的C:\ wamp \ www \ helpdesk \ admin \ newSolution.php中的DBconnect
=&gt;致命错误:在第33行的C:\ wamp \ www \ helpdesk \ admin \ newSolution.php中的非对象上调用成员函数query()
第33行是:
$DBconnect->query($insertTagsQuery);
知道我可能做错什么吗?另外,为什么我会收到此错误? $ DBconnect变量位于functions.php文件中。说实话不应该是不确定的。