---
title: "Felkod Fatal error: Call to a member function save()"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/192647-felkod-fatal-error-call-to-a-member-function-save"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "annaco"
published: "2015-04-02T18:12:03.000Z"
updated: "2015-04-03T13:13:54.000Z"
replies: 3
views: 945
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/192647-felkod-fatal-error-call-to-a-member-function-save"
---

# Felkod Fatal error: Call to a member function save()

## #1 — annaco, 2015-04-02T18:12Z

Hej!

Får följande felkod 
Fatal error: Call to a member function save() on a non-object in /Volumes/htdocs/ac222it/Uppgift2/src/php/saveXML.php on line 10

Såhär ser koden ut:

```php
<?php

	/**
	 *	Sparar det som finns i XML databasen.
	 */
	 
	const XML_DATABASE_PATH = 'src/xml/0.xml';
	
	function saveXML(){
		$stickers->save(self::XML_DATABASE_PATH);
		
	}
?>
```

förstår inte vad som är fel.

Säg till om ni behöver mer kod, har ett par filer till.

Tack på förhand.

Permalänk: https://www.webforum.nu/p/192647

## #2 — annaco, 2015-04-02T18:42Z

Har förstått på liknande trådar att ni behöver även denna fil.

\<?php
	include 'createPostIt.php';
	include 'saveXML.php';

 
class Main
{
//---------------------------------------------------
	//  Private constants
	//---------------------------------------------------
	
	/\*\*
	 \*	The path to the application's XML database.
	 \*/
	const XML_DATABASE_PATH = 'src/xml/0.xml';
	
	//---------------------------------------------------
	//  Constructor method
	//---------------------------------------------------
	
	/\*\*
	 \*	The class constructor.
	 \*/
	public function \__construct()
	{
		//kontrollerar om man vill lägga till en ny kommentar
		if (isset($\_GET\['id'\]) && isset($\_GET\['createPostIt'\])) {
			$this -\>createPostIt($\_GET\['id'\], $\_GET\['createPostIt'\]);
		}
		
		
	}
	
	//---------------------------------------------------
	//  Public methods
	//---------------------------------------------------
	
	/\*\*
	 \*	Laddar XML databasen och skriver ut texten som finns i den  
	 \*/
	public function createList()
	{
		
		createPostIt($id,$text);
		
		$stickers = new DOMDocument();
		$stickers-\>load(self::XML_DATABASE_PATH);
		$stickers = $stickers-\>getElementsByTagName('sticker');
		$output	= '';
		
		foreach ($stickers as $sticker){	
			$text	= sticker-\>createElement('text')-\>item(0)-\>nodeValue;
			$output .= '\<li\>'.$text.'\</li\>\<br\>';
			}
			
		saveXML();
		
		return $output;
	}
	
	
	
}

$main = new Main();

?\>

Permalänk: https://www.webforum.nu/p/2318461

## #3 — annaco, 2015-04-03T11:18Z

Ingen som kan hitta vad det är för fel??
Börjar känns lite panik för att jag inte kommer vidare med uppgiften.

Permalänk: https://www.webforum.nu/p/2318462

## #4 — metalboy, 2015-04-03T13:13Z

Var deklareras variabeln $stickers? I createList() sätts $stickers till en ny instans av DOMDocument, men deklareras variabeln utanför funktionen någonstans? Annars existerar variabeln endast i funktionen.

Enligt felmeddelandet så är $stickers inte en instans av ett objekt, och därför kan du inte anropa metoder i objektet.

Permalänk: https://www.webforum.nu/p/2318463

---

Tråden på webben: https://www.webforum.nu/amne/php/192647-felkod-fatal-error-call-to-a-member-function-save
