Създаване на администраторска страница, която актуализира полетата на таблицата

Това, което се опитвам да създам, е администраторска страница за редактиране на таблица в база данни. Тази администраторска страница ми позволява да редактирам елементи на отделна уеб страница, наречена index.php. Настроих структурата за администраторската страница, но не знам откъде да започна с внедряването на актуализиране на моята таблица. Наистина се нуждая от някаква насока как да постигна това. Административната страница, както и index.php в момента работят правилно, що се отнася до показване на данните от tblContent. В таблицата има само един ред, съдържащ данните. Името на таблицата е tblContent, а базата данни е data1. Много съм нов в това, така че се извинявам за ужасяващото ми кодиране. Благодаря ти!

admin.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" href="/bgstyle.css" type="text/css" media="screen" />

</head>

<body>

<div id="container"> <!-- Open container -->
    <div id="header">
        <h1><a href="/bgindex.html"><?php
                                    require_once 'classes.php';
                                    $rh = $database->getPageHeading();
                                    print($rh);
                                    ?></a></h1>
        <h2>                     <?php
                                    require_once 'classes.php';
                                    $rs = $database->getSubHeading();
                                    print($rs);
                                    ?></h2>
    </div>

    <div id="content">

<form method="post" action="" onSubmit="return verifyPageHeading()">

<table width="300" cellpadding="2" cellspacing="2">

    <tr>
        <td>Page Heading:</td>
        <td><input type="text" id="txtPageHeading" name="txtPageHeading" value="<?php
                                                            require_once 'classes.php';
                                                            $rh = $database->getPageHeading();
                                                            print($rh);
                                                            ?>" class="inputClass"></td>
    </tr>

    <tr>
        <td>Sub Heading:</td>
        <td><input type="text" id="txtSubHeading" name="txtSubHeading" value="<?php
                                                                require_once 'classes.php';
                                                                $rs = $database->getSubHeading();
                                                                print($rs);
                                                                ?>"  class="inputClass"></td>
    </tr>

    <tr>
        <td>Page Title:</td>
        <td><input type="text" id="txtPageTitle" name="txtPageTitle" value="<?php
                                                                require_once 'classes.php';
                                                                $rt = $database->getPageTitle();
                                                                print($rt);
                                                                ?>"  class="inputClass"></td>
    </tr>

    <tr>
        <td>MetaDescription:</td>
        <td><textarea style="width:300px;"cols="55" rows="5" name="txtMetaDescription"><?php
                                                                                         require_once 'classes.php';
                                                        $rd = $database->getMetaDescription();
                                                        print($rd);
                                                        ?></textarea></td>
    </tr>

    <tr>
        <td>MetaKeywords:</td>
        <td><input type="text" name="txtMetaKeywords" value="<?php
                                                require_once 'classes.php';
                                                $rk = $database->getMetaKeywords();
                                                print($rk);
                                                ?>"  class="inputClass"></td>
    </tr>

    <tr>
        <td>Content:</td>
        <td><textarea id="textarea1" name="txtContent" style="height: 170px; width: 300px;" rows="15" cols="10"> <?php                                  
                                                                require_once 'classes.php';
                                                                $rc = $database->getContent();
                                                                print($rc);
                                                                ?></textarea>
        <input type="submit" value="Save" style="background-color:;border:1px solid ;color:;width:200px;"></td>
    </tr>


        </table>
            </form>

</div>  

<div id="footer">

</div>

</div> <!-- Close id="container" -->
</body>

</html>

класове.php

<?php 

//Enter your database connection details here.
$host = 'localhost'; //HOST NAME.
$db_name = 'XXXXdata1'; //Database Name
$db_username = 'XXXXuser1'; //Database Username
$db_password = 'XXXXpass'; //Database Password

class database {
function __construct($pdo) {
    $this->pdo = $pdo;
}

function getPageHeading () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(1);
}
function getSubHeading () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(2);
}
function getContent () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(3);
}
function getPageTitle () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(4);
}
function getMetaDescription () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(5);
}
function getMetaKeywords () {
    $query = $this->pdo->prepare('SELECT * FROM tblContent');
    $query->execute();
    return $query->fetchColumn(6);
}



}

try {
$pdo = new PDO('mysql:host='. $host .';dbname='.$db_name, $db_username, $db_password);
} catch (PDOException $e) {
exit('Error Connecting To DataBase');
}

$database = new Database($pdo);

?>

person user2813676    schedule 09.12.2014    source източник
comment
искате да редактирате стойностите на вашата таблица от мрежата, това ли е вашето изискване?   -  person Fathah Rehman P    schedule 09.12.2014
comment
да Искам да използвам страницата си admin.php, за да редактирам стойностите на таблицата.   -  person user2813676    schedule 09.12.2014
comment
можеш ли да споделиш и тази структура на таблицата?   -  person Fathah Rehman P    schedule 09.12.2014
comment
imgur.com/5INzraH   -  person user2813676    schedule 09.12.2014
comment
Това ли ти трябваше?   -  person user2813676    schedule 10.12.2014


Отговори (1)


Разбрах го, вижте по-долу. Използвах $_POST, за да получа текущите стойности от страницата admin.php и UPDATE, за да заменя информацията за съществуващата таблица с новата информация, въведена на страницата admin.php. Това актуализира информацията, която след това ще бъде отразена на моята страница index.php. Тествах го и работи правилно, но съм отворен, ако има по-добър начин да направите това.

<?php

//Enter your database connection details here.
$host = 'localhost'; //HOST NAME.
$db_name = 'XXXXdb_name'; //Database Name
$db_username = 'XXXXuser'; //Database Username
$db_password = 'XXXXpass'; //Database Password


$PageHeading = $_POST['txtPageHeading'];
$SubHeading = $_POST['txtSubHeading'];
$PageTitle = $_POST['txtPageTitle'];
$MetaDescription = $_POST['txtMetaDescription'];
$MetaKeywords = $_POST['txtMetaKeywords'];
$Content = $_POST['txtContent'];

try {
$conn = new PDO('mysql:host='. $host .';dbname='.$db_name, $db_username, $db_password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

$sql = "UPDATE tblContent SET PageHeading='$PageHeading', SubHeading='$SubHeading', 
PageTitle='$PageTitle', MetaDescription='$MetaDescription', MetaKeywords='$MetaKeywords', 
Content='$Content' WHERE PageID=1";

// Prepare statement
$stmt = $conn->prepare($sql);

// execute the query
$stmt->execute();

// echo a message to say the UPDATE succeeded
echo $stmt->rowCount() . " records UPDATED successfully";
}
catch(PDOException $e)
{
echo $sql . "<br>" . $e->getMessage();
}

$conn = null;

?>
person user2813676    schedule 10.12.2014