Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

DataObjectManager Module /

Discuss the DataObjectManager module, and the related ImageGallery module.

Moderators: martimiz, UncleCheese, Sean, Ed, biapar, Willr, Ingo, swaiba

Error when Enabling DOM Drag and Drop Sort


Go to End


4 Posts   1912 Views

Avatar
drewbs

Community Member, 5 Posts

16 September 2009 at 3:48am

When inserting the "SortableDataObject::add_sortable_class('Slider');" into the _config.php file I get an _SESSION variable undefined error. Wondering if anyone else has seen this or if it is some fringe case (I assume it is) and what they did to fix it. Below is the error message and code for the 'Slider' class. And thank you Uncle Cheese for the great module.

Error:

GET /silver1/dev/build
Line 120 in /var/www/silver1/sapphire/core/control/Director.php
Source

111 			@file_get_contents('php://input')
112 		);
113 		
114 		// @todo find better way to extract HTTP headers
115 		if(isset($_SERVER['HTTP_ACCEPT'])) $req->addHeader("Accept", $_SERVER['HTTP_ACCEPT']);
116 		if(isset($_SERVER['CONTENT_TYPE'])) $req->addHeader("Content-Type", $_SERVER['CONTENT_TYPE']);
117 		if(isset($_SERVER['HTTP_REFERER'])) $req->addHeader("Referer", $_SERVER['HTTP_REFERER']);
118 
119 		// Load the session into the controller
120 		$session = new Session($_SESSION);
121 		$result = Director::handleRequest($req, $session);
122 		$session->inst_save();
123 
124 		// Return code for a redirection request
125 		if(is_string($result) && substr($result,0,9) == 'redirect:') {
126 			$response = new HTTPResponse();

Trace

    * Director::direct(/dev/build)
      Line 118 of main.php

Slider.php:

<?php
class Slider extends DataObject
{
	static $db = array (
		'Title' => 'Text',
		'Content' => 'HTMLText',
		'Link' => 'Text'
	);
	
	static $has_one = array (
		'SliderImage'=>'Image',
		'HomePage' => 'HomePage'
		
	);
		
	public function getCMSFields_forPopup()
	{
		
		return new FieldSet(
			new TextField('Title'),
			new TextareaField('Content'),
			new SimpleTreeDropdownField("Link", "Link"),
			new FileIFrameField('SliderImage')	
		);
	}
}
?>

Avatar
drewbs

Community Member, 5 Posts

16 September 2009 at 5:08am

Problem Solved. After a day of punding my head against the wall I Had a trailing line after the ?>. Doh!!!

Avatar
UncleCheese

Forum Moderator, 4102 Posts

16 September 2009 at 5:36am

Never, ever, ever, ever use a closing PHP tag unless you're using PHP in a template.

?> = BAD

Avatar
drewbs

Community Member, 5 Posts

16 September 2009 at 1:15pm

Thanks for the tip I am pretty new to php. Did some googling and see why it is a problem and why it caused the error it did.