为了账号安全,请及时绑定邮箱和手机立即绑定

如何从选项中获取输入,而我必须将数据输入到同一个数据库的两个表中,基于选项数据将被插入

如何从选项中获取输入,而我必须将数据输入到同一个数据库的两个表中,基于选项数据将被插入

PHP
摇曳的蔷薇 2021-12-24 15:10:59
我在数据库中有两个表,我必须通过表单输入数据,但条件是 - 表单中有一个选择选项,作为我们必须插入数据的选项。如果选择了选项 1,则数据应插入到表 x 中,如果选择了选项 2,则应将数据插入到表 y我曾尝试使用 switch case 和 elseif,但找不到合适的条件。html代码-        <form method="post" class="register-form" id="register-form">                                    <div class="form-group">                                        <label for="name"><i class="zmdi zmdi-account material-icons-name"></i></label>                                        <input type="text" name="aname" id="name" placeholder="Your Name"/>                                    </div>                                    <div class="form-group">                                        <label for="email"><i class="zmdi zmdi-email"></i></label>                                        <input type="email" name="email" id="email" placeholder="Your Email"/>                                    </div>                                    <div class="form-group">                                        <label for="address"><i class="zmdi zmdi-home"></i></label>                                        <input type="text" name="address" id="address" placeholder="Your Address"/>                                    </div>                                     <div class="form-group">                                        <label for="user"><i class="zmdi zmdi-accounts-alt"></i></label>                                        <select  id="person-type" name="logtype" required style="border-top: rgba(0,0,0,0.0);border-right: rgba(0,0,0,0.0);border-left: rgba(0,0,0,0.0); width: 100%;margin-left: 22px;">没有错误,而数据未插入表中
查看完整描述

3 回答

?
料青山看我应如是

TA贡献1772条经验 获得超8个赞

您应该在查询执行中添加一些错误处理以帮助查找发生了什么。


在 php 中传递的基本 mysqli 错误将类似于:


<?php

 if (!mysqli_query($edb,"YOUR QUERY HERE"))

 {

  echo("Error description: " . mysqli_error($con));

 }

?>


查看完整回答
反对 回复 2021-12-24
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

您的查询在 md5 函数附近存在语法错误。它被执行为 md5.(password) 而不是 md5(password)。还建议在开发模式下在 php 上保持错误日志记录。https://www.php.net/manual/en/function.error-reporting.php


查看完整回答
反对 回复 2021-12-24
?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

我认为您使用的 md5 函数是错误的。


'" . md5($_POST['apass']) . "'

代替


md5.('".$_POST['apass']."') //md5 必须在双引号中的 PHP 部分


为了尽量减少错误源,我更喜欢这个代码:


if ($_POST['logtype'] === 'consumer') {

    $table = "consumer";

}elseif ( $_POST['logtype'] === 'electrician' ){

    $table = "electrician";

}


$apass = md5($_POST['apass']);


$consumer = mysqli_query($edb,"insert into " . $table . " (name,email,address,logtype,password) values('".$_POST['aname']."','".$_POST['email']."','".$_POST['address']."','".$_POST['logtype']."','" . $apass . "'))");

header("Location:loginonly.php");


查看完整回答
反对 回复 2021-12-24
  • 3 回答
  • 0 关注
  • 138 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号