Results 1 to 7 of 7

Thread: Tutorial CMS

  1. #1

    Tutorial CMS

    HI. I've recently created a tutorial cms (content management system) out of a tutorial. But, whenever I try and create a tutorial, it gives me an error. Not a php error.

    Here's the code:
    Code:
    //tutorials.php
    <?php
    
    //Getting the file db.php which includes our database settings. 
    define( 'DB_PATH'  , "./" );
    require DB_PATH."db.php";
    
    
    //Setting up a variable to request the category which is in the URL
    $request_cat = $_REQUEST['category'];
    
    
    //Displaying an actual tutorial
    if (isset($id)) {
    
    // Updating the views, and grabbing a tutorial based on what id it has.
    $update = mysql_query("UPDATE $mysql_table SET views = views + 1  WHERE id='$id'");
    $result = mysql_query("SELECT * FROM $mysql_table WHERE id='$id'");
    while($row = mysql_fetch_array($result)){
     
      // Template for the tutorial
      echo "
      <table width=\"400\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
      <td width=\"400\"><table width=\"400\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td><table width=\"400\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
          <td width=\"275\"><div align=\"left\"><strong>
    <a href=\"tutorials.php?category=".$row['category']."&id=".$row['id']."\">
    ".$row['title']."</a>
    </strong>
    </div>
    </td>
          <td width=\"125\"><div align=\"right\">[ Views: ".$row['views']." ]</div></td>
        </tr>
          </table></td>
        </tr>
        <tr>
          <td><div align=\"left\">Description: ".$row['description']."</div></td>
        </tr>
        <tr>
          <td><div align=\"left\">".$row['content']."</div></td>
        </tr>
        <tr>
          <td><div align=\"left\">
        <table width=\"400\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
          <tr>
          <td width=\"150\"><div align=\"left\">Added: ".$row['date']."</div></td>
          <td><div align=\"right\">Author: <a href=\"mailto:".$row['email']."\">".$row['author']."</a></div></td>
          </tr>
        </table>
          </div></td>
        </tr>
        <tr>
          <td><div align=\"left\">Category: <a href=\"tutorials.php?category=".$row['category'].">".$row['category']."</a></div></td>
        </tr>
      </table></td>
        </tr>
      </table> 
      "; // End of template of tutorial
    } // End of grabbing data
      exit(); // Stopping anything below from interfearing with this sectiom
    } // End of Displaying an actual tutorial
    
    
    //Displaying tutorials in a cateogry.
    if ($category == $request_cat) {
    
    //Grabbing information from the database.
    $result = mysql_query("SELECT * from $mysql_table where category = '$category' ORDER BY ID DESC");
    while($row = mysql_fetch_array($result)) {
    
      //Template for the tutorials in a category.
      echo "
      <table width=\"400\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
      <td width=\"100\" align=\"center\" valign=\"middle\"><div align=\"center\"><a href=\"tutorials.php?category=".$row['category']."&id=".$row['id']."\"><img src=\"".$row['avatar']."\" alt=\"".$row['title']."\"  title=\"".$row['title']."\" width=\"90\" height=\"60\" border=\"0\"></a></div></td>
      <td width=\"300\"><table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
        <tr>
        <td><div align=\"center\"><strong>".$row['title']."</strong></div></td>
        </tr>
        <tr>
        <td><div align=\"left\">Description: ".$row['description']."</div></td>
        </tr>
        <tr>
        <td><table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
          <tr>
        <td><div align=\"left\">Added: ".$row['date']."</div></td>
        <td><div align=\"left\">Category: <a href=\"tutorials.php?category=".$row['category'].">".$row['category']."</a></div></td>
        </tr>
        </table></td>
        </tr>
        <tr>
        <td><table width=\"100%\"  border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
          <tr>
        <td width=\"175\"><div align=\"left\">Author: <a href=\"mailto:".$row['email']."\">".$row['author']."</a></div></td>
        <td width=\"100\"><div align=\"left\">Views: ".$row['views']."</div></td>
          </tr>
        </table></td>
        </tr>
      </table></td>
        </tr>
      </table><br>
      "; // End of Template for the tutorials in a category.
    } // End of grabbing information from database.
    } // End of Displaying tutorials in a cateogry.
    
    
    // Main Tutorial page.  This is where all your categories will be listed. 
    if (!$category) {
    
    //This makes a list of all the cateogries that are in the database!  No need to make the links yourself!
    $result = mysql_query("SELECT DISTINCT category from $mysql_table ");
    while($row = mysql_fetch_array($result)) {
     
      // Showing all the categories
      echo "
      <a href=\"tutorials.php?category=".$row['category']."\">".$row['category']."</a><br>
      "; // End of showing all the categories
    } // End of grabbing unique categories in database
    }// End of main tutorial page
    
    ?>
    Code:
    // admin/admin.php
    <?php include('header.php');?>
    <?php
    
    //Getting the file db.php which includes our database settings. 
    define( 'DB_PATH'  , "./" );
    require DB_PATH."db.php";
    
    // Setting up some variables
    $request_id = $_REQUEST['id'];
    
    // Page: admin.php?act=addnew
    if ($act == addnew) {
    echo "
    <form name=\"form\" method=\"post\" action=\"admin.php?act=addnew\">
      <table width=\"80%\" border=\"0\" cellspacing=\"3\" cellpadding=\"0\">
      <tr>
        <td width=\"20%\">Name:</td>
        <td width=\"79%\"><input name=\"name\" type=\"text\" id=\"name\" size=\"40\"></td>
      </tr>
      <tr>
        <td>Avatar:</td>
        <td><input name=\"avatar\" type=\"text\" id=\"avatar\" value=\"http//\" size=\"40\"></td>
      </tr>
      <tr>
        <td>Category:</td>
        <td><input name=\"category\" type=\"text\" id=\"category\" value=\"Automatically makes new category\" size=\"40\">        </td>
      </tr>
      <tr>
        <td>Description:</td>
        <td><input name=\"description\" type=\"text\" id=\"description\" size=\"40\"></td>
      </tr>
      <tr>
        <td>Author:</td>
        <td><input name=\"author\" type=\"text\" id=\"author\" size=\"40\"></td>
      </tr>
      <tr>
        <td>Email:</td>
        <td><input name=\"email\" type=\"text\" id=\"email\" size=\"40\"></td>
      </tr>
      <tr>
        <td>Content</td>
        <td><textarea name=\"content\" cols=\"65\" rows=\"10\"></textarea></td>
      </tr>
      <tr>
        <td><input name=\"submit\" type=\"submit\" id=\"submit\" value=\"Submit\">
        <input name=\"reset\" type=\"reset\" id=\"reset\" value=\"Reset\"></td>
        <td>If you mess up, a edit link will be available on submit. </td>
      </tr>
      </table>
    </form>";
    
      if ($_POST['submit']) {
    
      $name = $_POST['name'];
      $avatar = $_POST['avatar'];
      $category = $_POST['category'];
      $description = $_POST['description'];
      $author = $_POST['author'];
      $email = $_POST['email'];
      $content = $_POST['content'];
      $date = date('m-d-Y');
    
        if (!$name || !$avatar || !$category || !$description || !$author || !$email || !$content) {
        die ('Sorry, a field was left blank.  Check all fields again!');
        }
        else {
        mysql_query("INSERT INTO & #036;mysql_table(id,title,avatar,date,category,description,author,email,content,
    views) VALUES('','$name','$avatar','$date','$category','$description','$author','$email','$content','')") or die('Sorry, it failed');
        echo "Success!  You have added the tutorial <strong>$name</strong> to the category <strong>$category.</strong><br>What would you like to do?<br><a href=\"?act=addnew\">Add  a new tutorial</a> &nbsp; ----&nbsp; <a href=\"?act=view\">Edit / Delete a previous tutorial</a>";
        }
      }
    }
    
    
    // Page: admin.php?act=edit&id=##
    if ($act == edit && $id == $request_id) {
    $result = mysql_query("SELECT * FROM $mysql_table WHERE id='$request_id'");
    while($row = mysql_fetch_array($result)){
      echo "
      <form name=\"form\" method=\"post\" action=\"admin.php?act=edit&id=$request_id\">
        <table width=\"80%\" border=\"0\" cellspacing=\"3\" cellpadding=\"0\">
        <tr>
          <td width=\"20%\">Name:</td>
          <td width=\"79%\"><input name=\"name\" type=\"text\" id=\"name\" value=\"".$row['title']."\" size=\"40\"></td>
        </tr>
        <tr>
          <td>Avatar:</td>
          <td><input name=\"avatar\" type=\"text\" id=\"avatar\" value=\"".$row['avatar']."\" size=\"40\"></td>
        </tr>
        <tr>
          <td>Category:</td>
          <td><input name=\"category\" type=\"text\" id=\"category\" value=\"".$row['category']."\" size=\"40\">        </td>
        </tr>
        <tr>
          <td>Description:</td>
          <td><input name=\"description\" type=\"text\" id=\"description\" value=\"".$row['description']."\" size=\"40\"></td>
        </tr>
        <tr>
          <td>Author:</td>
          <td><input name=\"author\" type=\"text\" id=\"author\" value=\"".$row['author']."\" size=\"40\"></td>
        </tr>
        <tr>
          <td>Email:</td>
          <td><input name=\"email\" type=\"text\" id=\"email\" value=\"".$row['email']."\" size=\"40\"></td>
        </tr>
        <tr>
          <td>Content</td>
          <td><textarea name=\"content\" cols=\"65\" rows=\"10\">".$row['content']."</textarea></td>
        </tr>
        <tr>
          <td><input name=\"submit\" type=\"submit\" id=\"submit\" value=\"Edit\"></td>
          <td></td>
        </tr>
        </table>
      </form>
      ";
     
      if ($_POST['submit']) {
    
      $name = $_POST['name'];
      $avatar = $_POST['avatar'];
      $category = $_POST['category'];
      $description = $_POST['description'];
      $author = $_POST['author'];
      $email = $_POST['email'];
      $content = $_POST['content'];
       
        mysql_query("UPDATE $mysql_table SET title='$name', avatar='$avatar', category='$category', description='$description', author='$author', email='$email', content='$content' WHERE id='$request_id'") or die('Sorry, it failed');
        echo "Success!  Your tutorial has been edited.<br>What would you like to do?<br>
    <a href=\"?act=addnew\">Add  a new tutorial</a> &nbsp; ----&nbsp; 
    <a href=\"?act=view\">Edit / Delete a previous tutorial</a>";
      }
    }
    }
    
    // Page: admin.php?act=delete&id=##
    if ($act == delete && $id == $request_id) {
    $result = mysql_query("SELECT * FROM $mysql_table WHERE id='$request_id'");
    while($row = mysql_fetch_array($result)){
    
      echo "
      <form action='?act=delete&id=".$row['id']."' method='post' name='form1'>
        Are you sure you want to delete the tutorial: <strong>".$row['title']."<strong>?
        <br>
        <input name='yes' type='checkbox' id='yes' value='checkbox'>
        Yes<br>
        <input name='no' type='checkbox' id='no' value='checkbox'>
        No
        <br>
        <input name='submit' type='submit' id='submit' value='Submit'>
      </form>";
    }
     
    if ($_POST['submit']){
    
      if ($_POST['yes'] && $_POST['no']){
      die('Error! : Are you trying to confuse me?');
      }
    
      if ($_POST['yes']){
     
      $result = mysql_query("SELECT * FROM $mysql_table WHERE id='$request_id'");
      while($row = mysql_fetch_array($result)){
       
        mysql_query("DELETE FROM $mysql_table WHERE id='$request_id'");   
        echo "
        Thanks, the tutorial <strong>".$row['title'].".</strong> has been deleted. <a href='?'>Click here</a> to continue.
        ";
      }
      }
    
      if ($_POST['no']){
      die('<a href="?">Click here</a> to continue.');
      }
     
      if (!$_POST['yes'] && !$_POST['no']){
      die('Oops, you forgot to respond to my question.');
      }
       
     
    } 
    }
    
    
    
    // Page: admin.php?act=view
    if ($act == view) {
    echo "
    <table width=\"700\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">
      <tr>
      <td><strong>ID</strong></td>
      <td><strong>Name</strong></td>
      <td><strong>Author</strong></td>
      <td><strong>Category</strong></td>
      <td><strong>Edit / Delete</strong></td>
      </tr>
      ";
      $result = mysql_query("SELECT * FROM $mysql_table ORDER BY ID ASC");
      while($row = mysql_fetch_array($result)){
      echo "
        <tr>
      <td>".$row['id']."</td>
      <td>".$row['title']."</td>
      <td><a href=\"mailto:".$row['email']."\">".$row['author']."</a></td>
      <td>".$row['category']."</td>
      <td><a href=\"admin.php?act=edit&id=".$row['id']."\">Edit</a> / <a href=\"admin.php?act=delete&id=".$row['id']."\">Delete</a></td>
        </tr>
      ";
      }
    echo "</table>";
    }
    
    // Page: admin.php
    if (!$act) {
    echo "
    What would you like to do?<br><a href=\"?act=addnew\">Add a new tutorial</a> &nbsp; ----&nbsp; <a href=\"?act=view\">Edit / Delete a previous tutorial </a>
    ";
    }
    ?>
    <?php include('footer.php');?>
    I'm guessing the problem is in here:
    Code:
      if ($_POST['submit']) {
    
      $name = $_POST['name'];
      $avatar = $_POST['avatar'];
      $category = $_POST['category'];
      $description = $_POST['description'];
      $author = $_POST['author'];
      $email = $_POST['email'];
      $content = $_POST['content'];
      $date = date('m-d-Y');
    
        if (!$name || !$avatar || !$category || !$description || !$author || !$email || !$content) {
        die ('Sorry, a field was left blank.  Check all fields again!');
        }
        else {
        mysql_query("INSERT INTO & #036;mysql_table(id,title,avatar,date,category,description,author,email,content,
    views) VALUES('','$name','$avatar','$date','$category','$description','$author','$email','$content','')") or die('Sorry, it failed');
        echo "Success!  You have added the tutorial <strong>$name</strong> to the category <strong>$category.</strong>
    <br>What would you like to do?<br>
    <a href=\"?act=addnew\">Add  a new tutorial</a> &nbsp; ----&nbsp; 
    <a href=\"?act=view\">Edit / Delete a previous tutorial</a>";
        }
      }
    }
    EDIT: Don't know if this will help but here's the install.php file that isntalled the mySQL:

    Code:
    <title>Installer</title>
    <?php
    
    //Getting the file db.php which includes our database settings. 
    define( 'DB_PATH'  , "./" );
    require DB_PATH."db.php";
    
    //Installing
    mysql_query("
    CREATE TABLE `$mysql_table` (
    `id` tinyint(11) NOT NULL auto_increment,
    `title` text NOT NULL,
    `avatar` text NOT NULL,
    `date` varchar(50) NOT NULL,
    `category` varchar(25) NOT NULL default '',
    `description` text NOT NULL,
    `author` text NOT NULL,
    `email` text NOT NULL,
    `content` text NOT NULL,
    `views` varchar( 30 ) NOT NULL default '0',
    PRIMARY KEY (`ID`)
    ) TYPE=MyISAM AUTO_INCREMENT=1 ;
    ")
    or die('Error, something is wrong.  Please make sure all information is correct and try again.');
    
    echo "Install Complete!  All the tables have been installed, and you are all set!  This file has been deleted for security purposes.  If not, please delete it manually.";
    
    ?>
    Hopefully you understand the code. I really need help on this.

    Sorry for the long code.
    Last edited by ethereality; 07-19-2005 at 10:47 PM.

  2. #2
    You could have posted which error message you get.
    From the glimpse of it, I noticed one possible error:

    PHP Code:
    mysql_query("INSERT INTO [B]& #036;[/B] 
    Remove the bolded part from your code.
    It's located under your "I'm guessing the problem is in here:".
    If that doesn't correct it, please post which error message you get.

  3. #3
    I see... it wasn't a php/server error, it was the message that the code puts out if the tutorial submission didn't work.



    &#036

  4. #4
    Okay, I'm getting a weird error now.


    Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/dylan/public_html/tutorials.php on line 447

    Line 447:
    Code:
    <span align=\"right\">Category: <a href=\"tutorials.php?category=".$row['category'].\">".$row['category']."</a></span></td>

  5. #5
    Join Date
    Oct 2002
    Location
    York, United Kingdom
    Posts
    279
    Has anyone else had a problem with the tutorial? As it looks like all the code is wrong. Or you have dont something wrong!

  6. #6
    The original tutorial: http://www.forums.pixel-designz.net/...?showtopic=975

    I've edited it and fixed one error. Then I changed the ouput of the tutorial template. That's where I'm having the problem.

    Here's the PHP source file for tutorials.php:
    http://ethereality.third-reality.net/tutorials.phps

  7. #7
    Join Date
    May 2004
    Location
    Milton, Florida
    Posts
    786
    <span align=\"right\">Category: <a href=\"tutorials.php?category=".$row['category'].\">".$row['category']."</a></span></td>
    Avoid " whenever possible... they parse slower then '....

    Also try this:
    <span align='right'>Category: <a href=\"tutorials.php?category=$row['category']\">$row['category']</a></span></td>

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •