在网站的配置页面上工作我在尝试更新用户信息时遇到错误。让我向您展示代码中不起作用的部分,然后我解释问题是什么:
HTML code - config_view.php:
<div class="container" <?php if ($lock_company_or_user == "0") {echo "";} else {echo "style='display: none'";} ?>>
<fieldset>
<legend>¿Eres una empresa o un particular?</legend>
<p>Necesitamos esta información para adaptar la página de configuración a tu caso.</p>
<b>Nota: una vez guardada, esta configuración no se puede cambiar. Por favor, asegúrate de escoger la correcta.</b>
<br><br>
<form name="select_company_or_user" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
<input type="radio" name="company_or_user_selector" value="0" /> Empresa -
<input type="radio" name="company_or_user_selector" value="1" checked /> Particular <br><br>
<input type="submit" value="Guardar" /><br>
</form>
</fieldset>
</div>
PHP代码 - config_model.php:
// Check if the user sent data
if(!empty($_POST)) {
// Obtain the data
$selector = $_POST['company_or_user_selector'];
// Prepare to update data in the database
$sql_update = "UPDATE users_extendedprofile SET company_or_user='$selector' WHERE id='$display_name'";
// Chech if query has been successful
if(mysqli_query($conn, $sql_update)) {
mysqli_close($conn);
$successes[] = lang("SUCCESFULLY_UPDATED_TYPE_OF_USER");
} else {
$errors[] = lang("ERROR_SAVING_TYPE_OF_USER");
}
}
它应该如何运作:我创建了一个非常简单的注册页面,其中用户不会提供使用网站所有部分所需的所有信息,但至少他们可以看到它并检查他们是否喜欢或不。如果他们决定继续使用它,那么他们会在页面中输入一些额外信息(主要用于计费目的)。第一个&#34;问题&#34;我要求他们选择是否是公司 - 只有在以前没有提供此信息时才会出现。
然后,在模型中(在管理此表单的部分中)我编写了一个代码来从表单中获取数据,将其存储为变量并继续将其存储在数据库中。这里的事情是页面加载没有问题,当我点击单选按钮并发送表单时,结果是一条错误消息,告诉我信息尚未保存。
我的第一个假设是查询有任何错误,所以我检查了它(并将其与我准备更新数据库中的信息的其他代码进行比较)并且我没有发现任何差异所以我决定手动执行查询在phpMyAdmin中(完全按照PHP格式编写)并且它工作得很好,但随后又回到配置页面,同样的错误一次又一次出现。
另请注意,代码中出现的一些变量存储在代码的这一部分之前(很长,所以我决定只发布影响此表单的部分)
所以我的问题是:你是否发现任何可能影响数据库中信息更新过程的错误?
非常感谢,如果我犯了任何重大错误(我正在自学,所以可能会发生这种情况),我很抱歉。
-Jordi