If you mean, "setting it on the calling form", as in, the HTML Form that is posting the data, then no, that can't be trusted. Rule #1 is to never trust user input. You never want to take for granted that a user has passed a given variable, or has passed it in an expected manner. Let's do an example. You set up a form to update someone's password, and it looks something like this:
<FORM METHOD=POST ACTION="changepass.php">
Your new password: <INPUT TYPE=password name=password size=12><BR>
Confirm password: <INPUT TYPE=password name=confirm_password size=12><BR>
<INPUT TYPE=HIDDEN name=userid value=<?php echo $userid?>>
<INPUT name=submit type=submit value="Change Password">
</FORM>
Now, the trick is to look at the 'hidden' input. Imagine the php code that might process the form. I'll skip the details, but one line might look like this:
$sql = "UPDATE users set password='$password' where users_idx='$userid'";
$result = mysql_query($sql);
Uh, oh. You're in deep now. Because a person can easily fake a form submit, and pass ANY userid they want.
Now, imagine if a user somehow discovers you use a variable called svPath. What if they query somepage.php?svPath=/etc -- will your code handle this? Is there a chance that the svPath variable will NOT have been set in the session at some point? Even with register_globals, a person can't pass a GET or POST variable to overwrite a session variable unless you change the variable order -- which does session variables last, overwriting any previous variables. But if you have a circumstance where you just say,
global $foo;
and then use $foo, you have to be sure that $foo CANNOT be a user variable passed through something like somepage.php?foo=bar, otherwise you're risking your security.
Admittedly, this is pretty vague, but the best way to think about things is to constantly think to yourself: knowing what I know, if I was a user, could I break my code in ways I do not intend for it to be breakable?