• User

    session_start();session_register();

    Ciao a tutti, sono alle prime armi con php e devo dire che sta andando prorpio male, sono alle prese con le sessioni e non ho ancora risolto il mio problema, ho seguito la guida php di GT è ho riscritto l'esempio qui www.studiocad.net/prova/ss1.php , ma non funziona, non riesco a venirne fuori, credo sia un prob del php.ini ma come lo risolvo?

    Spero possiate aiutarmi
    grazie 1000
    Ciao


  • User Attivo

    Ciao Elbaforum,

    Stai lavorando in locale?

    Prova a postare un pò di codice e indica gli errori che ti vengono restituiti.

    :ciauz:


  • User

    Ciao MZ, grazie per l'aiuto,

    sto lavorando sia in locale che su web, ma ho lo stesso risultato, ho seguito l'esempio della guida su http://www.giorgiotave.it/guida_php/sessioni.php all'indirizzo http://www.studiocad.net/prova/ss1.php ma non salva i dati nella sessione.

    Non capisco una mazza!!


  • User

    posta il codice, ho ancora 15 min di pausa pranzo, magari posso aiutarti 😄


  • User

    Ciao Desu, ho letto un pò in ritardo, comunque riposto il codice che è presente nella pagina:

    [php]
    ss1.php

    <?php

    ss1.php

    session_start();
    $num_impiegato =session_id();
    session_register("nome","dipartimento"); ?>

    <HTML>
    <BODY>
    <?php
    $form="<CENTER><H2>Consegne Spa - Nuovo Impiegato</H2></CENTER>
    <FORM ACTION="http://bumper/ss2.php" METHOD="POST">
    <B>Nome impiegato:</B><BR>
    <INPUT TYPE="text" NAME="nome" SIZE=20>
    <BR><B>Dipartimento</B><BR>
    <SELECT NAME="dipartimento" >
    <OPTION SELECTED>Autista consegne
    <OPTION>Magazzino
    <OPTION>Vendite
    <OPTION>Amministrazione
    </SELECT>
    <BR>
    <INPUT TYPE="submit" VALUE="Pagina seguente">
    <INPUT TYPE="reset" VALUE="Cancella!">
    </FORM>";
    ?>
    </BODY></HTML>
    <?php
    echo $form;
    ?>

    ss2.php

    <?php
    session_start();
    session_register("indirizzo","telefono");
    ?>
    <HTML>
    <BODY>
    <?php
    $form="<CENTER><H2>Consegne Spa - Nuovo Impiegato</H2></CENTER>
    <FORM ACTION="http://bumper/ss3.php" METHOD="POST">
    <B>Indirizzo impiegato:</B><BR>
    <INPUT TYPE="text" NAME="indirizzo" SIZE=30>
    <BR><BR><B>Numero telefono impiegato:</B><BR>
    <INPUT TYPE="text" NAME="telefono" SIZE=30>
    <BR>
    <HR>
    <INPUT TYPE="submit" VALUE="Pagina seguente">
    <INPUT TYPE="reset" VALUE="Cancella!">
    </FORM>";
    ?>
    </BODY></HTML>

    <?php
    echo "$form";
    ?>

    ss3.php

    <?php
    session_start();
    ?>
    <HTML>
    <BODY>
    <CENTER><B><H3> Ecco le informazioni sul nuovo impiegato</H3></B></CENTER>
    <?php
    $visualizza="<PRE>
    Nome impiegato: $nome<BR>
    Dipartimento: $dipartimento<BR>
    Livello retributivo: $stipendio<BR>
    Sede: $sede<BR>
    Indirizzo casa: $indirizzo<BR>
    Telefono: $telefono<BR>
    ID impiegato: $num_impiegato<BR></PRE>";
    ?>
    </body>
    </html>
    <?
    echo "$visualizza";
    $destinatario="[email protected]";
    $header="Inserimento nuovo impiegato";
    $info="Ecco le informazioni...
    NOME: $nome
    DIPARTIMENTO: $dipartimento
    LIVELLO RETRIBUTIVO: $stipendio
    INDIRIZZO CASA: $indirizzo
    NUM TELEFONO: $telefono
    ID IMPIEGATO: $num_impiegato";
    mail($destinatario,$header,$info);

    session_destroy();
    ?>
    [/php]


  • User Attivo

    Ottimo.

    Cerchiamo di focalizzare il problema, quali sono i punti non chiari ?


  • User

    Ciao MZ,

    http://www.studiocad.net/prova/ss1.php in questa pagina ho copiato pari pari il codice della guida, che alla fine dovrebbe restituitre i dati che si trascina dietro, ma all'ultima pagina non mostra niente.
    Non capisco una mazza di php quindi non ho la minima idea.


  • User

    non capisco,

    tutti i valori con $valore non li stampa a video,


  • User

    allora, non ho visto il tutorial, ma ti direi come lo farei io...

    intanto le variabili le salverei in sessione senza il register, ma con $_SESSION['nome']=$_POST['nome'] nella pagina che riceve i dati della form.. anche se magari non è quello che vuoi...

    poi per visualizzarle ti serve cmq prenderle dalla sessione quindi stampare
    <?=$_SESSION['nome']?>

    a me così funziona...

    spero di esserti stato utile 🙂

    hola


  • User

    Ciao desu, ho provato come dici ma non mi funziona, il problema però lo ho su questo scpit, che non ne vuole sapere di inserire i dati nel database, forse perchè ci sono dei problemi di settaggio nel php.ini, questo è il code

    [php]<?
    include_once "config.php";
    $itemnoo=str_replace("'","''",$_REQUEST["itemno"]);
    $catidd=str_replace("'","''",$_REQUEST["catid"]);
    $makee=str_replace("'","''",$_REQUEST["make"]);
    $modell=str_replace("'","''",$_REQUEST["model"]);
    $yearr=str_replace("'","''",$_REQUEST["year"]);
    $builtbyy=str_replace("'","''",$_REQUEST["builtby"]);
    $lengthh=str_replace("'","''",$_REQUEST["length"]);
    $capacityy=str_replace("'","''",$_REQUEST["capacity"]);
    $mileagee=str_replace("'","''",$_REQUEST["mileage"]);
    $enginee=str_replace("'","''",$_REQUEST["engine"]);
    $exteriorr=str_replace("'","''",$_REQUEST["exterior"]);
    $interiorr=str_replace("'","''",$_REQUEST["interior"]);
    $conditionn=str_replace("'","''",$_REQUEST["condition"]);
    $pricee=str_replace("'","''",$_REQUEST["price"]);
    $Statuss=str_replace("'","''",$_REQUEST["Status"]);
    $Descriptionn=str_replace("'","''",$_REQUEST["des"]);

    if (isset($_POST['Save']))
    {
    //$sql="INSERT INTO car (itemno,catid,make,model,year,builtby,length,capacity,mileage,engine,exterior,interior,condition,price,Status,Description) VALUES('".$_REQUEST['itemno']."',".$_REQUEST['catid'].",'".$_REQUEST['make']."','".$_REQUEST['model']."',".$_REQUEST['year'].",'".$_REQUEST['builtby']."',".$_REQUEST['length'].",".$_REQUEST['capacity'].",".$_REQUEST['mileage'].",".$_REQUEST['engine'].",'".$_REQUEST['exterior']."','".$_REQUEST['interior']."','".$_REQUEST['condition']."',".$_REQUEST['price'].",".$_REQUEST['Status'].",'".$_REQUEST['des']."')";
    $sql="INSERT INTO car (itemno,catid,make,model,year,builtby,length,capacity,mileage,engine,exterior,interior,condition,price,Status,Description) VALUES('$itemnoo','$catidd','$makee','$modell','$yearr','$builtbyy','$lengthh','$capacityy','$mileagee','$enginee','$exteriorr','$interiorr','$conditionn','$pricee','$Statuss','$Descriptionn')";
    mysql_query($sql);
    header("Location: Addpic.php?page=1&catid=$catidd&itemno=$itemnoo");
    }

    if(isset($_POST['cancel']))
    {
    //echo "Hello";
    //die();
    header("location: viewcategory.php?catid=".$_REQUEST['catid']);
    }

    ?>
    [/php]


  • User

    hai provato a fare un echo dei campi per vedere se effettivamente riceve i valori?


  • User

    forse l'errore è sul str_replace.. prova a modificare con

    $itemnoo=str_replace("'","'",$_REQUEST["itemno"]);


  • User

    ciao desu, scusa ma non so minimamente come si fa un echo, ho provato come dici tu ma non da nessun segnale, il fatto strano e che alla pagina seguente addpic.php, mi carica l'immagine sul server ma non i dati nel database. Boo!


  • User

    prova a scrivere

    [php]echo $_REQUEST["itemno"];[/php]per ogni campo per vedere se li stampa effettivamente tutti e poi fai un

    [php]echo $sql;[/php]prima del mysql_query() per stampare a video la query effettiva che gli passi così vedi se la sintassi è sbagliata.. io sono qui un'altra ora, oggi ho deciso di rubare a lavoro 😄

    non è che magari sbagli a visualizzare i dati o a pescarli dal db anche se effettivamente ci sono?

    hai un programmino tipo phpmyadmin per vedere i dati nel db?


  • User

    Ciao Desu,
    sono ancora dietro allo script che mi fa dannare, perchè questo codice funziona:

    [php]<?
    include_once "config.php";

    if (isset($_POST['Save']))
    {
    mysql_query("INSERT INTO category (catname, catdescription) VALUES ('$_REQUEST[Category]', '$_REQUEST[Description]')");
    header("location: AddCat.php");
    }

    if(isset($_POST['Cancel']))
    {
    header("location: admin.php");
    }

    ?>[/php]

    e quest'altro no, perchè sono scritti tutti e due allo stesso modo, il primo inserisce i dati nella tabella, e il secondo no e non da nemmeno l'errore.

    [php]<?
    include_once "config.php";

    if (isset($_POST['save']))
    {
    mysql_query("INSERT INTO car (itemno, catid, make, model, year, builtby, length, capacity, mileage, engine, exterior, interior, condition, price, Status, Description) VALUES ('$_POST[itemno]','$_POST[catid]','$_POST[make]','$_POST[model]'$_POST[year]','$_POST[builtby]','$_POST[length]','$_POST[capacity]','$_POST[mileage]','$_POST[engine]','$_POST[exterior]','$_POST[interior]','$_POST[condition]','$_POST[price]','$_POST[Status]','$_POST[Description]')");
    header("location: AddCat.php");
    }

    if(isset($_POST['Cancel']))
    {
    header("location: admin.php");
    }

    ?>[/php]


  • User

    Prova a sostituire

    [php]'$_POST[itemno]'[/php]con

    [php]'".$_POST['itemno']."'[/php]per ogni campo, poi fammi sapere...


  • User

    Ciao Desu,

    ti ringrazio per l'aiuto, dopo altre ore perse dietro allo script ho risolto cosi':
    [php]$sql = "INSERT INTO car.car (itemno, catid, make, model, year, builtby, length, capacity, mileage, engine, exterior, interior, condition, price, Status, Description) VALUES ('$itemno', '$catid', '$make', '$model', '$year', '$builtby', '$length', '$capacity', '$mileage', '$engine', '$exterior', '$interior', '$condition', '$price', '$Status', '$Description');"; [/php]

    Inoltre ho dovuto cambiare una stringa sul file my.ini perchè mysql aveva un bug

    Grazie a tutti per l'aiuto.
    Ciauz