954,561 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Super newbie needs help

I have written lots of php dealing with html strings, but it's my first time trying to get a very simple page to function. It has a textarea, and I guess that all I need to do is get the text into the database on the server. I really have no idea how to go about this, and I'm so frustrated that I can't find what I'm looking for. It's simple (again, guessing) as all there is, for now, is the text area. The client (user) types in some text, sends it, after previewing it through my nifty string work :-) and it goes to the database. It would be very nice of someone to walk me through this. I'm the type of learner who needs guidance over "solutions". Sorry if I seem dumb, but I just need help. I'm only a hobbyist programmer.

tefflox
Junior Poster
174 posts since Jul 2006
Reputation Points: 12
Solved Threads: 1
 

My html:

<form action="insert.php" method="post" name="form"> <br/><span style="position:relative: left: -20%; font-size: small;"></span><br/>
<textarea name="text" id="DynamicText" style="font-family: arial, helvetica, sans-serif; font-size: large;" cols="100" rows="5" wrap="soft" onclick="document.form.text.value='';">
Lorem ipsum . . .
  </textarea>
  <br/>
  <br/>
<input type="button" value="Preview" onclick="reloadTextDiv();" />
  </form>



PHP:

$username = "-------";
  $password = "-------";
  $database = "----";
  
  $text = $_POST['text']; 
  
  mysql_connect("mysql.gravityway.com", $username, $password); 
  
  @mysql_select_db($database) or die("Unable to select database"); 
  
  $query = "INSERT INTO ---- VALUES ('','$first')";
  
  mysql_query($query);

  mysql_close();
tefflox
Junior Poster
174 posts since Jul 2006
Reputation Points: 12
Solved Threads: 1
 

Here is my progress. I have connected to the localhost database and inserted text.

Insertion code:

<?php

  $username = "root";
  $password = "-------";
  $database = "grav";
  $host     = "localhost";
  
  $text = $_POST['text']; 
  
  $cid  = mysql_connect($host, $username, $password); 
  
  if (!$cid) { echo("ERROR: " . mysql_error() . "\n"); }
  
  if ($_SERVER['REQUEST_METHOD'] == "POST") {
/*
  // the following 4 lines are needed if your server has register_globals set to Off
  $category = $_POST['category'];
  $sitename = $_POST['sitename'];
  $siteurl = $_POST['siteurl'];
  $description = $_POST['description'];
*/
  $SQL = " INSERT INTO posts VALUES ('', '$text')";
  
  $result = mysql_db_query($database, $SQL, $cid);

  if (!$result) {
      echo("ERROR: " . mysql_error() . "\n".$SQL."\n"); }
  else
      echo ("New Post Added\n");

  }

  mysql_close($cid);  
  
     
?>



I need help with retrieving the data. This is mainly copynpaste code, but it's a start. I get an unknown category error. The table has two columns, the int key and a text field.

<?php

  $username = "root";
  $password = "-------";
  $database = "grav";
  $host     = "localhost";

    # connect to database
    $cid = mysql_connect($host,$username,$password);
    if (!$cid) { echo("ERROR: " . mysql_error() . "\n");    }
?>
<html>
 <head>
  <title>Display Posts</title>
 </head>
 <body>
 
<?php
    $category = "Posts";

    # setup SQL statement
    $SQL = " SELECT * FROM posts WHERE category = '$category' ";

    # execute SQL statement
    $retid = mysql_db_query($database, $SQL, $cid);

    # check for errors
    if (!$retid) { echo( mysql_error()); }
      else {

          # display results
          echo ("<h3><b>$category</b></h3>\n");
           while ($row = mysql_fetch_array($retid)) {
              $post = $row["post"];
              echo ($post."<br/>\n");
          }
    }
?>

</body>
</html>
tefflox
Junior Poster
174 posts since Jul 2006
Reputation Points: 12
Solved Threads: 1
 

I need help with retrieving the data. This is mainly copynpaste code, but it's a start. I get an unknown category error. The table has two columns, the int key and a text field.

<?php

  $username = "root";
  $password = "-------";
  $database = "grav";
  $host     = "localhost";

    # connect to database
    $cid = mysql_connect($host,$username,$password);
    if (!$cid) { echo("ERROR: " . mysql_error() . "\n");    }
?>
<html>
 <head>
  <title>Display Posts</title>
 </head>
 <body>
 
<?php
    $category = "Posts";

    # setup SQL statement
    $SQL = " SELECT * FROM posts WHERE category = '$category' ";

    # execute SQL statement
    $retid = mysql_db_query($database, $SQL, $cid);

    # check for errors
    if (!$retid) { echo( mysql_error()); }
      else {

          # display results
          echo ("<h3><b>$category</b></h3>\n");
           while ($row = mysql_fetch_array($retid)) {
              $post = $row["post"];
              echo ($post."<br/>\n");
          }
    }
?>

</body>
</html>


please replace this part of your code:

<?php
    $category = "Posts";

    # setup SQL statement
    $SQL = " SELECT * FROM posts WHERE category = '$category' ";

    # execute SQL statement
    $retid = mysql_db_query($database, $SQL, $cid);

    # check for errors
    if (!$retid) { echo( mysql_error()); }
      else {

          # display results
          echo ("<h3><b>$category</b></h3>\n");
           while ($row = mysql_fetch_array($retid)) {
              $post = $row["post"];
              echo ($post."<br/>\n");
          }
    }
?>


with this one:

$category = "Posts";

    # setup SQL statement
    $SQL = " SELECT * FROM posts WHERE category = '$category' ";

    # execute SQL statement
    $retid = mysql_query($query);
  $result=mysql_query($retid) or die (mysql_error());
   $num=mysql_num_rows($result);
 
# display results
while ($i<$num)
{
  $post=mysql_result($result,$i,"post");
echo "<h3><b>'.$category.'</b></h3>\n";
echo $post;          
$i++;
}


I think that you are getting an unknown column because the field "post" is not the column name of what you are trying to display.
Look at your database, look what field do you want to display and replace "post" in

$post=mysql_result($result,$i,"post");

with that field.
Or better yet please display here all your table fields so I can guide you.

ryan_vietnow
Posting Pro
578 posts since Aug 2007
Reputation Points: 28
Solved Threads: 71
 

Hi, thanks. Your code works with the following change: $SQl = " SELECT post FROM posts ";

tefflox
Junior Poster
174 posts since Jul 2006
Reputation Points: 12
Solved Threads: 1
 

Actually, there are problems with the code provided. I had mistakenly copied my own back in. This works ---

# setup SQL statement
  $SQL = " SELECT post FROM posts ";

  # execute SQL statement
  $retid = mysql_db_query($database, $SQL, $cid);
 
  # check for errors
  if (!$retid) { echo( mysql_error()); }

  else {

    # display results
    echo ("<h3><b>Posts</b></h3>\n");

    while ($row = mysql_fetch_array($retid)) {
      $post = $row["post"];
      echo ($post."<br/>\n");
    }
  }
tefflox
Junior Poster
174 posts since Jul 2006
Reputation Points: 12
Solved Threads: 1
 

so,that's why I am wondering on where did you get that SQL statement.Actually mysql_fetch_array is another way of displaying data but for me my way of displaying data is what I have shown.But anyway,it's still the same!

ryan_vietnow
Posting Pro
578 posts since Aug 2007
Reputation Points: 28
Solved Threads: 71
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You