Call to a member function on a non-object

Call to a member function on a non-object - PHP - Programmation

Marsh Posté le 24-09-2009 à 10:37:24    

Bon la je pete un cable, j'arrive pas a comprendre pourquoi je recoit cette erreur:
 
j'ai ce bout de code :


$base = $ICE->stringToProxy("Meta:tcp -h 127.0.0.1 -p 6502" );
$meta = $base->ice_checkedCast("::Murmur::Meta" );
$serverID = $_GET['s'];
if ($_REQUEST['delserver']=='oui') {
 $meta->getServer($serverID + 0)->delete();
 header ('location:/mumble-admin');


 
qui est dans un fichiers redirect.php et que j'appel par un lien hypertext de cette facon:
 


foreach($get_AllServers as $s) {
   $id = $s->id();
   echo "<a href=\"?s=".$id."&delserver=ask\">[ delete ]</a>\n"; }
   }


 


<?php  
if ($_REQUEST['delserver']=='ask') { ?>  
<div id="delete_server">Vous etes sur de vouloir effacer le serveur ID#<? echo $serverID; ?> : ?<br><br>
<a style="text-decoration:none;" href="lib/redirect.php?s=<? echo $serverID; ?>&delserver=oui"><input type="submit" value="OUI"></a>
<a style="text-decoration:none;" href="lib/redirect.php?s=<? echo $serverID; ?>&delserver=non"><input type="submit" value="NON"></a></div>
<? exit;
} ?>


 
Donc quand je clic sur OUI, le serveur est delete mais au lieu d'etre redirigé, je recoit l'erreur Call to a member function delete() on a non-object . C'est frustrant car si je met direct :
 


foreach($get_AllServers as $s) {
   $id = $s->id();
   echo "<a href=\"?s=".$id."lib/redirect.php&delserver=ask\">[ delete ]</a>\n"; }
   }


 
pour eviter de passer par la boite de dialogue me demandant si je suis sur de vouloir effacer le serveur, ca marche.
 
J'espere avoir ete claire -_-
 
 

Reply

Marsh Posté le 24-09-2009 à 10:37:24   

Reply

Marsh Posté le 24-09-2009 à 12:24:46    

Alors je viens de trouver que ce qui f**t la m**de, c'est <input type="submit" value="OUI"> . Si je le remplace par un simple OUI textuel , ca marche .
 
Donc pour l'instant ca va, mais j'aimerais bien mes petits boutons quoi ^^ .
 
Quelqu'un saurait pourquoi ca fout le boxon comme ca?


Message édité par ipnoz le 24-09-2009 à 12:25:52
Reply

Marsh Posté le 24-09-2009 à 14:02:38    

Un submit dans un lien, c'est normal que tu ne récupère pas le GET ! Le input envoie le form inexistant vers la page courante, mais sans GET, peut-être que le OUI est envoyé via POST ceci-dit.
 
Bref, google("html", "form", "input", "a" );
 
Revois tes bases même !


Message édité par kao98 le 24-09-2009 à 14:04:39

---------------
Kao ..98 - Uplay (R6S) : kao98.7.62x39 - Origin (BF4, BF1) : kntkao98
Reply

Marsh Posté le 24-09-2009 à 14:47:02    

Quelles bases ? J'apprends sur le tas, j'assimille tout moi :o :D
 
Bon j'irais potasser/googler un peu ca.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed