Comunidad de diseño web y desarrollo en internet online

Duda "session_register" Programa Tienda Online

Citar            
MensajeEscrito el 02 Dic 2019 08:49 pm
Hola:

Tengo un Programa de una "Tienda Online".

El Programa se compone de 3 partes:

- formulario.php

- confirmar.php

- productos.php

Pues bien, el problema-duda que tengo es con esta línea del Fichero "productos.php":

Código :

session_register('pedido'); 


Si la pongo me aparece el error:

Fatal error: Uncaught Error: Call to undefined function session_register() in T:\XAMPP\htdocs\MIS-EJERCICIOS\TIENDA\productos.php:11 Stack trace: #0 {main} thrown in T:\XAMPP\htdocs\MIS-EJERCICIOS\TIENDA\productos.php on line 11

¿Alguna idea?

Os pongo debajo todo el Código para que quede más claro.

Gracias & Saludetes. ;-)


FORMULARIO.PHP

Código :

<?php

   session_start();

   session_destroy();

?>


<html>


      <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      </head>



      <body>
      

            <h1>Bienvenido a la tienda</h1>
      
            <form action="productos.php" method="post">
               
                  Ingrese su nombre : <input name="nombre" type="text">
                  
                  <input name="ingresar" type="submit" value="ingresar">
            
            </form>
      

      </body>



</html>




PRODUCTOS.PHP

Código :

?php 
   
   session_start(); //Inicio sesion 

      if (isset($_POST['nombre']))
      { 
         $nombre = $_POST['nombre']; 
         $_SESSION['usuario'] = $nombre;      //Guardo el nombre del usuario en sesion 
         session_register('pedido'); 

      }

      if (isset($_POST['agregar']))                  //Si se envió el primer formulario 
      { 
         $claves = array_keys($_POST); 
         $producto = $claves[1]; 
         
         if (!is_array($_SESSION['pedido'])) //Si no es un array 
         {
            $_SESSION['pedido'] = array();
         }
         
         if(array_key_exists("$producto", $_SESSION['pedido']))
         { 
               $cantidad = $_SESSION['pedido']["$producto"]; 
               $_SESSION['pedido']["$producto"] = ++$cantidad; 
         } 
         else 
         { 
               $_SESSION['pedido']["$producto"] = 1; 
         } 
      }
      
      if(isset($_GET['quitar']))         //Si se envió el segundo formulario 
      { 
            $claves = array_keys($_GET); 
            $producto = $claves[1]; 
            unset($_SESSION['pedido'][$producto]); //Eliminar la posicion del arreglo 
      } 
      
      echo "Bienvenido : ".$_SESSION['usuario'];

?> 



<html> 

   <head> 
         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
   </head> 

   <body> 

            <form action="productos.php" method="post"> 
                  <input type="hidden" name="agregar"> 
                  
                  <table border="1"> 
                     
                     <tr>                      
                           <td width="150"> 
                                 Producto: <b>TV</b><br> 
                                 Descripcion: <b>31"</b><br> 
                                 Precio: <b>1500000</b><br> 
                                 <input type="submit" name="TV" id="button" value="Anadir al carrito">
                           </td>                            
                           <td width="150"> 
                                 Producto: <b>DVD</b><br>
                                 Descripcion: <b>Negro</b><br> 
                                 Precio: <b>200000</b><br> 
                                 <input type="submit" name="DVD" id="button2" value="Anadir al carrito">
                           </td>                            
                           <td width="150"> 
                                 Producto: <b>MP4</b><br> 
                                 Descripcion: <b>4GB</b><br> 
                                 Precio: <b>150000</b><br> 
                                 <input type="submit" name="MP4" id="button3" value="Anadir al carrito">
                           </td>                      
                     </tr> 
                     
                     <tr>                      
                           <td> 
                                 Producto: <b>Laptop</b><br> 
                                 Descripcion: <b>12"</b><br> 
                                 Precio: <b>1500000</b><br> 
                                 <input type="submit" name="Laptop" id="button3" value="Anadir al carrito">
                           </td>                            
                           <td> 
                                 Producto: <b>MP3</b><br> 
                                 Descripcion: <b>2GB</b><br> 
                                 Precio: <b>100000</b><br> 
                                 <input type="submit" name="MP3" id="button3" value="Anadir al carrito">
                           </td>                            
                           <td> 
                                 Producto: <b>Camara</b><br> 
                                 Descripcion: <b>12Mpx</b><br> 
                                 Precio: <b>250000</b><br> 
                                 <input type="submit" name="Camara" id="button3" value="Anadir al carrito">
                           </td>                      
                     </tr> 
                     
                     <tr>                      
                           <td> 
                                 Producto: <b>Celular</b><br> 
                                 Descripcion: <b>Negro</b><br> 
                                 Precio: <b>200000</b><br> 
                                 <input type="submit" name="Celular" id="button3" value="Anadir al carrito">
                           </td>                            
                           <td> 
                                 Producto: <b>PSP</b><br> 
                                 Descripcion: <b>Gris</b><br> 
                                 Precio: <b>500000</b><br> 
                                 <input type="submit" name="PSP" id="button3" value="Anadir al carrito">
                           </td>                            
                           <td> 
                                 Producto: <b>Impresora</b><br> 
                                 Descripcion: <b>Multifuncional</b><br> 
                                 Precio: <b>300000</b><br> 
                                 <input type="submit" name="Impresora" id="button3" value="Anadir al carrito">
                           </td>                      
                     </tr> 
            
                  </table> 

            </form> 
            

            <form action="productos.php" method="get"> 

                  <h1>En el carrito de compras tiene los siguientes productos</h1> 
            
                  <input type="hidden" name="quitar"> 
                  
                  <?php 

                        if (!empty($_SESSION['pedido']))      //Si hay productos en el carrito
                        { 
                              foreach ($_SESSION['pedido']   as   $prod => $unidades) 
                              { 
                                 echo "$unidades unidades del producto $prod"; 
                                 echo "<input type='Submit' name='$prod' value='Quitar'><br>"; 
                              }
                        }
                  ?> 
            
            </form> 

            
            <form action="confirmar.php" method="post"> 

                  <input type='Submit' name='Comprar' value="Confirmar compra"> 
            
            </form> 
         

         
   

   </body>

</html>



CONFIRMAR.PHP[

Código :

<?php 


      session_start(); 

      echo "<h1 align='center'>FELICIDADES</h1> <h2 align='center'>acaba de comprar</h2>"; 
      
      foreach ($_SESSION['pedido']    as   $prod => $unidades) 
      { 
      
         echo "<p align='center'>$unidades $prod</p>"; 

      } 


?>



<h2 align='center'>Gracias por su compra</h2> 


<h2>Vuelva pronto</h2> 


<a href="formulario.php">TERMINAR</a>

Por manolito74

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 03 Dic 2019 10:47 am
Desde PHP 5.4 se accede directamente desde el array $_SESSION

Entonces seria

$_SESSION['pedido']="algo";

Es decir asignas directamente, el register no es necesario

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome
Citar            
MensajeEscrito el 03 Dic 2019 08:49 pm
Hola:

Entonces, en ese ejemplo en concreto, podría prescindir de esta línea:

session_register('pedido');

¿O tendría que poner otra cosa en vez de esa Línea?

Gracias & Saludetes. ;-)

Por manolito74

1 de clabLevel



 

chrome
Citar            
MensajeEscrito el 03 Dic 2019 11:09 pm
En efecto podes quitarlo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

chrome

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.