www.webdeveloper.com
Results 1 to 6 of 6

Thread: Send div content to database

  1. #1
    Join Date
    Aug 2013
    Posts
    2

    Send div content to database

    Hi there,

    Let say i something like this code:

    <div id="test">Success</div>

    I want to take the text (Success in this example) from inside the div tag and put it into a table in a database. How would this be done?

  2. #2
    Join Date
    Feb 2012
    Location
    Tallahassee, FL
    Posts
    280
    This would require some Javascript to do.

    There are a number of different ways, but if you want the page to reload and it to act like a normal post, something like the following would work:

    HTML Code:
    <?php
        $postedDiv = "";
        if(isset($_POST['divData'])){
            $postedDiv = "You saved:" . $_POST['divData'];
        }
    ?><!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script>
    
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Test</title>
    
        <script type="text/javascript">
            $(document).ready(function(){
                $("#saveBtn").click(function(){
                    data = $("#useData").html();
                    $("#useDataField").val(data);
                    $("#someForm").submit();
                });
            });
        </script>
    
        <style type="text/css">
            #hiddenFormWrap{
                display: none;
            }
        </style>
    
    </head>
    <body>
    
    <div id="useData">
        Some Data in a Div
    </div>
    <input type="button" id="saveBtn" value="Save Div" />
    
    <div><?php echo $postedDiv; ?></div>
    
    <div id="hiddenFormWrap">
        <form id="someForm" method="post">
            <input type="hidden" name="divData" id="useDataField" />
        </form>
    </div>
    
    </body>
    </html>

  3. #3
    Join Date
    Aug 2013
    Posts
    2
    Quote Originally Posted by NoEffinWay View Post
    This would require some Javascript to do.

    There are a number of different ways, but if you want the page to reload and it to act like a normal post, something like the following would work:

    HTML Code:
    <?php
        $postedDiv = "";
        if(isset($_POST['divData'])){
            $postedDiv = "You saved:" . $_POST['divData'];
        }
    ?><!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script>
    
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>Test</title>
    
        <script type="text/javascript">
            $(document).ready(function(){
                $("#saveBtn").click(function(){
                    data = $("#useData").html();
                    $("#useDataField").val(data);
                    $("#someForm").submit();
                });
            });
        </script>
    
        <style type="text/css">
            #hiddenFormWrap{
                display: none;
            }
        </style>
    
    </head>
    <body>
    
    <div id="useData">
        Some Data in a Div
    </div>
    <input type="button" id="saveBtn" value="Save Div" />
    
    <div><?php echo $postedDiv; ?></div>
    
    <div id="hiddenFormWrap">
        <form id="someForm" method="post">
            <input type="hidden" name="divData" id="useDataField" />
        </form>
    </div>
    
    </body>
    </html>
    Hi thanks for that! Although i still cannot get it to send

    Would you be able to explain how the code you have given works?

    Thanks,
    Luke

  4. #4
    Join Date
    Feb 2012
    Location
    Tallahassee, FL
    Posts
    280
    Sure, here is the code, with comments:
    You can view it live at: http://script-x.net

    HTML Code:
    <?php
        //Set this variable so we can avoid and issues with unset vars
        $postedDiv = "";
    
        //Chek to see if the field was submitted.
        if(isset($_POST['divData'])){
            //If it was, lets set a variable to it.
            $postedDiv = "You saved:" . $_POST['divData'];
        }
    ?><!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <!--Import jQuery-->
        <script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js" type="text/javascript"></script>
    
        <!-- Setting of Char Encoding-->
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    
        <!--You better know what this is-->
        <title>Test</title>
    
        <script type="text/javascript">
            //Make sure we wait until the page
            $(document).ready(function(){
                //Binds the save button to a click action
                $("#saveBtn").click(function(){
                    //Get the content of the div with id "useData"
                    data = $("#useData").html();
                    //Set the value of the hidden field
                    $("#useDataField").val(data);
                    //Submit form that has id someForm
                    $("#someForm").submit();
                });
            });
        </script>
    
        <style type="text/css">
            /*I am not explaining this, you better know it*/
            #hiddenFormWrap{
                display: none;
            }
        </style>
    
    </head>
    <body>
    
    <!--The div with the content we want to save-->
    <div id="useData">
        Some Data in a Div
    </div>
    <!--A button that triggers the form submit-->
    <input type="button" id="saveBtn" value="Save Div" />
    <!--This echos the result of your post.  If it is the initial load, it is blank-->
    <div><?php echo $postedDiv; ?></div>
    
    <!--this contains the form that is hidden.  You dont need the form to be hidden, I just did for this example-->
    <div id="hiddenFormWrap">
        <!--We need this so we can easily submit the data-->
        <form id="someForm" method="post">
            <!--A hidden form that is responsible for submitting the content of the div-->
            <input type="hidden" name="divData" id="useDataField" />
        </form>
    </div>
    
    
    </body>
    </html>

  5. #5
    Join Date
    Mar 2007
    Location
    localhost
    Posts
    2,318
    If you don't want to use JQuery, your option is (based on the above code) using Javascript
    HTML Code:
    <?php
        //Set this variable so we can avoid and issues with unset vars
        $postedDiv = "";
    
        //Chek to see if the field was submitted.
        if(isset($_POST['divData'])){
            //If it was, lets set a variable to it.
            $postedDiv = "You saved: " . $_POST['divData'];
        }
    ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <head>
    <title>Test</title>
    <script type="text/javascript">
    function doSaveData(){
    	sourceData = document.getElementById("useData").innerText;
    	document.getElementById("divData").value = sourceData;
    	return true;
    }	
    </script>
    <style type="text/css">
    #hiddenFormWrap{display: none;}
    </style>
    
    </head>
    <body>
    <div id="useData">Some Data in a Div</div>
    <form id="someForm" name="formName" method="post" onsubmit="return doSaveData();">
    <input type="submit" name="submit" value="Save Div" />
    <div id="hiddenFormWrap">
    		<textarea id="divData" name="divData" title="savedData" class="hiddenTextArea" >this is where the data should be</textarea>
    </div>
    </form>
    <div><?php echo $postedDiv; ?></div>
    </body>
    </html>
    Last edited by \\.\; 08-02-2013 at 05:31 PM.
    Yes, I know I'm about as subtle as being hit by a bus..(\\.\ Aug08)
    Yep... I say it like I see it, even if it is like a baseball bat in the nutz... (\\.\ Aug08)
    I want to leave this world the same way I came into it, Screaming, Incontinent & No memory!
    I laughed that hard I burst my colostomy bag... (\\.\ May03)
    Life for some is like a car accident... Mine is like a motorway pile up...

    Problems with Vista? :: Getting Cryptic wid it. :: The 'C' word! :: Whois?

  6. #6
    Join Date
    Feb 2012
    Location
    Tallahassee, FL
    Posts
    280
    I just realized I didn't put the full path. >_> Here it is working: http://script-x.net/example.php

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

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



Recent Articles