Back to top

Autore Topic: Edit e New  (Letto 1998 volte)

Offline e123456

  • Esploratore
  • **
  • Post: 127
  • Sesso: Femmina
    • Mostra profilo
Edit e New
« il: 21 Lug 2010, 17:51:13 »
Ciao a tutti,
sto cercando di sviluppare un mio componente... e a volte risulta essere un po' deprimente!!!!  :'(
Il mio scopo per ora è aggiungere dei campi alle tabelle della mia base dati.
Ho come bottoni modifica e nuovo.... è la seconda volta che mi capita
che tra i due non c'è alcuna differenza.
Mi spiego meglio: 
se seleziono un campo e poi clicco su modifica, innanzitutto nella text area
non mi appare il testo da modificare.. ma è completamente vuoto e se ci scrivo
qualcosa tornando all'elenco non ho modificato un bel nulla... ho aggiunto un record
(cosa che dovrebbe fare NEW).
Varie guide sottolineavano la banalità della questione perchè si tratta di effettuare dei controlli
sull'ID per capire se è nuovo o meno... ma a me non funziona.....
qualcuno mi sa aiutare?
Un ultima questione nella mia tabella ho 2 record (esculso l'ID) che sono stringe alle quali
ho messo il vincolo NOT NULL.... ma se inserisco dei record senza testo... il  db non mi da alcun errore...
come è possibile?
Aspettando un vostro aiuto
vi saluto e vi ringrazio.....
... ;)


Offline dmdigital

  • Esploratore
  • **
  • Post: 62
    • Mostra profilo
Re:Edit e New
« Risposta #1 il: 22 Lug 2010, 11:19:06 »
Varie guide sottolineavano la banalità della questione perchè si tratta di effettuare dei controlli
sull'ID per capire se è nuovo o meno... ma a me non funziona.....
Nella view, devi usare del codice simile a questo:
Codice: [Seleziona]
$row =& JTable::getInstance('TuaTabella','Table');
$cid = JRequest::getVar( 'cid', array(0), '', 'array' );
$id = $cid[0];

if ($id > 0) {
$row->load($id);
}

Per quanto riguarda il null... Il fatto è che una stringa può essere vuota ma non null, e di default è questo il comportamento delle JTable: se un campo stringa l'hai lasciato vuoto, te lo salva come stringa vuota ma non null.

Ciao!
AssistenzaJoomla.it (Assistenza Joomla, Joomla SEO e Formazione): http://www.assistenzajoomla.it
DM Digital - Realizzazione Siti Web - Sviluppo Software - Assistenza Computer - Modena - http://www.dmdigital.it

Offline e123456

  • Esploratore
  • **
  • Post: 127
  • Sesso: Femmina
    • Mostra profilo
Re:Edit e New
« Risposta #2 il: 22 Lug 2010, 20:21:36 »

Per quanto riguarda il null... Il fatto è che una stringa può essere vuota ma non null, e di default è questo il comportamento delle JTable: se un campo stringa l'hai lasciato vuoto, te lo salva come stringa vuota ma non null.


Ok, ho compreso il concetto... ma a questo punto come faccio ad ovviare...
cioè come faccio a non far memorizzare la stringa vuota nel db?
Grazie mille e ciao

Offline dmdigital

  • Esploratore
  • **
  • Post: 62
    • Mostra profilo
Re:Edit e New
« Risposta #3 il: 23 Lug 2010, 08:46:09 »
Non capisco: hai messo NOT NULL del DB... cosa vorresti che succeda quando salvi un record senza specificare i valori dei campi NOT NULL? Campi vuoti o errore?
AssistenzaJoomla.it (Assistenza Joomla, Joomla SEO e Formazione): http://www.assistenzajoomla.it
DM Digital - Realizzazione Siti Web - Sviluppo Software - Assistenza Computer - Modena - http://www.dmdigital.it

Offline e123456

  • Esploratore
  • **
  • Post: 127
  • Sesso: Femmina
    • Mostra profilo
Re:Edit e New
« Risposta #4 il: 23 Lug 2010, 16:42:18 »
Vorrei che uscisse ERRORE!!!
...e quindi obblighi a compilare tutti i campi!!
 

Offline mmleoni

  • Global Moderator
  • Instancabile
  • *****
  • Post: 5547
  • Sesso: Maschio
  • Just another *nix coder/sysadmin...
    • Mostra profilo
Re:Edit e New
« Risposta #5 il: 24 Lug 2010, 21:11:45 »
controllo lato client: javascript nella view di edit del recordset.
controllo lato server: implementazione del metodo check() nella classe derivata da JTable.

andrebbero entrambi ma il primo è tipicamente sufficiente.

ciao,
marco

ps: dai un occhiata al mio sito...
mmleoni web consulting - creazione siti web aziendali ed e-commerce avanzati - sviluppo moduli e componenti Joomla

 



Web Design Bolzano Kreatif