API16

JTable/delete: Difference between revisions

From Joomla! Documentation

Doxiki (talk | contribs)
New page: ===Description=== Method to delete a row from the database table by primary key value. <span class="editsection" style="font-size:76%;"> <nowiki>[</nowiki>[[Description:JTable/delete|...
 
m clean up
Line 2: Line 2:
Method to delete a row from the database table by primary key value.
Method to delete a row from the database table by primary key value.


<span class="editsection" style="font-size:76%;">
<nowiki>[</nowiki>[[Description:JTable/delete|Edit Descripton]]<nowiki>]</nowiki>
</span>


{{Description:JTable/delete}}
 
{{subst:Description:JTable/delete}}


===Syntax===
===Syntax===
Line 77: Line 75:
</source>
</source>


<span class="editsection" style="font-size:76%;">
 
<nowiki>[</nowiki>[[SeeAlso:JTable/delete|Edit See Also]]<nowiki>]</nowiki>
{{subst:SeeAlso:JTable/delete}}
</span>
{{SeeAlso:JTable/delete}}


===Examples===
===Examples===

Revision as of 14:28, 24 March 2017

Description

Method to delete a row from the database table by primary key value.


{{subst:Description:JTable/delete}}

Syntax

delete($pk=null)
Parameter Name Default Value Description
$pk null An optional primary key value to delete. If not set the instance property value is used.

Returns

boolean True on success.

Defined in

libraries/joomla/database/table.php

Importing

jimport( 'joomla.database.table' );

Source Body

public function delete($pk = null)
{
        // Initialise variables.
        $k = $this->_tbl_key;
        $pk = (is_null($pk)) ? $this->$k : $pk;

        // If no primary key is given, return false.
        if ($pk === null) {
                return false;
        }

        // If tracking assets, remove the asset first.
        if ($this->_trackAssets) {
                // Get and the asset name.
                $this->$k       = $pk;
                $name           = $this->_getAssetName();
                $asset          = JTable::getInstance('Asset');
                if ($asset->loadByName($name)) {
                        if (!$asset->delete()) {
                                $this->setError($asset->getError());
                                return false;
                        }
                } else {
                        $this->setError($asset->getError());
                        return false;
                }
        }

        // Delete the row by primary key.
        $this->_db->setQuery(
                'DELETE FROM `'.$this->_tbl.'`' .
                ' WHERE `'.$this->_tbl_key.'` = '.$this->_db->quote($pk)
        );
        $this->_db->query();

        // Check for a database error.
        if ($this->_db->getErrorNum()) {
                $this->setError($this->_db->getErrorMsg());
                return false;
        }

        return true;
}


{{subst:SeeAlso:JTable/delete}}

Examples

<CodeExamplesForm />