首页 > 解决方案 > 我的 php 表单没有向 myphpadmin 发送数据

问题描述

我正在尝试构建一个 wordpress 插件,该插件将允许管理员在创建表单和进程 php 代码后从管理页面创建用户,我刷新了我的 wordpress 但没有错误,但是在填写表单并单击注册按钮后显示找不到页面,并且我已将分类br.php 和 demo.php 放在同一文件夹中,但仍然无法正常工作

这是我的名为 classfiedbr.php 的 php 代码

<?php
/**
* @package ClassifiedBr
*/
/*
Plugin Name: ClassifiedBr
Plugin URI: http://britchi.com/plugin
Description: This is my first Attempt on writting a custom plugin
Version: 1.0.0
Author: *Bright* C Godwin 
Author URI: http://britchi.com/plugin
License: GPLv2 or later
Text Domain: classifiedbr-plugin
*/
add_action('admin_menu', 'classifiedbr_setup_menu');


function classifiedbr_setup_menu(){
        add_menu_page( 'ClassifiedBr Page', 'ClassifiedBr', 'manage_options', 'classifiedbr', 'classifiedbr_init' );
}

function classifiedbr_init(){
    echo '<form action="demo.php" method="post" />';
    echo "<h1>Britchi Tracking</h1>";
    echo '<p>';
    echo 'Costumers Name (required) <br/>';
    echo '<input type="text" name="cname"/>';
    echo '</p>';
    echo '<p>';
    echo 'Tracking number (required) <br/>';
    echo '<input type="text" name="ctracking"/>';
    echo '</p>';
    echo '<p>';
    echo 'Email (required) <br/>';
    echo '<input type="email" name="cemail" />';
    echo '</p>';
    echo '<p>';
    echo 'Recived Port (required) <br/>';
    echo '<input type="text" name="crport" />';
    echo '</p>';
    echo '<p>';
    echo 'Delivered Port (required) <br/>';
    echo '<input type="text" name="cdport" />';
    echo '</p>';
    echo '<p>';
    echo 'Current Location (required) <br/>';
    echo '<input type="text" name="clocation" />';
    echo '</p>';
    echo '<p>';
    echo 'Destination (required) <br/>';
    echo '<input type="text" name="cdestination". />';
    echo '</p>';
    echo '<p><input type="submit" name="cregistered" value="Register"></p>';
    echo '</form>';




}

?>

那么这是我的 demo.php

<?php

define('DB_NAME', 'class');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost');

$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);

if (!$link) {
    die('Could not connect: ' . mysql_error());
}

$db_selected = mysql_selected_db(DB_NAME, $link);

if (!$db_selected) {
    die('Can\'t use ' . DB_NAME . ': ' . mysql_error());
}

$cname = $_POST['cname'];
$cemail = $_POST['cemail'];
$ctracking = $_POST['ctracking'];
$crport = $_POST['crport'];
$cdport = $_POST['cdport'];
$cname = $_POST['clocation'];
$cname = $_POST['cdestination'];

$sql = "INSERT INTO demo (cname, cemail, ctracking, erport, cdport, clocation, cdestination) VALUES ('$cname', 'cemail', 'ctracking', 'crport', 'cdport', 'clocation', 'cdestination')";

if (!mysql_query($sql)) {
    die('ERROR: ' . mysql_error());
}

mysql_close();
?>

这是页面

在此处输入图像描述

这是我从页面得到的错误消息

在此处输入图像描述

这是我保存文件的文件夹

在此处输入图像描述

我曾尝试在这里搜索,但与我自己的问题相关的问题(我的 php 表单未插入到 phpmyadmin)但尚未解决,所以我希望有人能帮助我谢谢

标签: phpwordpressformsphpmyadmin

解决方案


只需在您的demo.php中进行以下更改,并将这两个文件放在 Wordpress 目录的 wp-admin 中。

<?php

define('DB_NAME', 'class');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
define('DB_HOST', 'localhost');

$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);



if (!$link) {
    die('Can\'t use ' . DB_NAME . ': ' . mysqli_error($link));
}

   $cname = $_POST['cname'];
   $cemail = $_POST['cemail'];
   $ctracking = $_POST['ctracking'];
   $crport = $_POST['crport'];
   $cdport = $_POST['cdport'];
   $clocation = $_POST['clocation'];
   $cdestination = $_POST['cdestination'];

   $sql = "INSERT INTO demo (cname, cemail, ctracking, crport, cdport,  clocation, cdestination) VALUES ('$cname', '$cemail', '$ctracking', '$crport', '$cdport', '$clocation', '$cdestination')";

if (!mysqli_query($link, $sql)) {
    die('ERROR: ' . mysqli_error($link));

}

   mysqli_close($link);
?>

推荐阅读