phpBB Italia ringrazia tutti gli utenti che hanno dato fiducia al nostro progetto per ben 9 anni, e che, grazie al grande lavoro fatto da tutto lo Staff (rigorosamente a titolo gratuito), hanno portato il portale a diventare il principale punto di riferimento italiano alla piattaforma phpBB.
Purtroppo, causa motivi personali, non ho più modo di gestirlo e portarlo avanti. Il forum viene ora posto in uno stato di sola lettura, nonché un archivio storico per permettere a chiunque di fruire di tutte le discussioni trattate.
Il nuovo portale di assistenza per l'Italia di phpBB diventa phpBB-Store.it, cui ringrazio per aver deciso di portare avanti questo grande progetto.
Grazie ancora,
Carlo - Amministratore di phpBB Italia
inserimento dati topic nel DB
-
- Utente
- Messaggi: 62
- Iscritto il: 10/08/2011, 16:17
- Sesso: Maschio
- Versione: 3.0.9
- Server: UNIX/Linux
- PHP: 5.3.0
- Database: Mysql
- Contatta:
inserimento dati topic nel DB
A questo punto in quale file php e in quale funzione avviene l'aggiornamento del DB con questi dati? Dovrei far aggiornare degli altri dati che naturalmente inserirò in quella parte di codice...
Scusate ma non riesco a trovare il punto esatto.
Grazie
Carlo
- Micogian
- Leader Programmatori
- Messaggi: 3704
- Iscritto il: 07/01/2010, 8:51
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.4.36
- Database: MySQL 5.1.70-log
- Località: Udine
- Contatta:
Re: inserimento dati topic nel DB
In questo caso è posting.php ma ci sono diversi "mode" e altri file e funzioni interessate, non è cosa semplice se uno non conosce il php e la struttura di phpbb.
-
- Utente
- Messaggi: 62
- Iscritto il: 10/08/2011, 16:17
- Sesso: Maschio
- Versione: 3.0.9
- Server: UNIX/Linux
- PHP: 5.3.0
- Database: Mysql
- Contatta:
Re: inserimento dati topic nel DB
- Micogian
- Leader Programmatori
- Messaggi: 3704
- Iscritto il: 07/01/2010, 8:51
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.4.36
- Database: MySQL 5.1.70-log
- Località: Udine
- Contatta:
Re: inserimento dati topic nel DB
Io so di aver aggiunto un campo nella tabella attachments e ho dovuto fare diverse modifiche:
La procedura prevede:
1) la creazione del campo nella tabella
2) La modifica dei file php interessati all'inserimento di un allegato che sono:
- includes/functions_posting.php
- includes/functions_content.php
- includes/message_parser.php
- includes/acp/acp_users.php
- includes/ucp/ucp_attachments.php
- posting.php
3) La modifica del template, con l'inserimento del nuovo valore. I file da modificare sono:
- styles/prosilver/template/attachments.html
- styles/prosilver/template/posting_editor.html
- styles/prosilver/template/posting_attach_body.html
-
- Utente
- Messaggi: 62
- Iscritto il: 10/08/2011, 16:17
- Sesso: Maschio
- Versione: 3.0.9
- Server: UNIX/Linux
- PHP: 5.3.0
- Database: Mysql
- Contatta:
Re: inserimento dati topic nel DB
- Micogian
- Leader Programmatori
- Messaggi: 3704
- Iscritto il: 07/01/2010, 8:51
- Versione: 3.2.0
- Server: UNIX/Linux
- PHP: 5.4.36
- Database: MySQL 5.1.70-log
- Località: Udine
- Contatta:
Re: inserimento dati topic nel DB
Inserire campo "attach_comment_title" in Attachments
Questa procedura consente di aggiungere un campo 'attach_comment_title' nella tabella attachments.
Lo scopo è quello di utilizzare il nuovo campo per inserire un titolo all'allegato, lasciando inalterato il campo attuale "attach_comment' che prevede un commento.
La procedura prevede:
1) la creazione del campo nella tabella
2) La modifica dei file php interessati all'inserimento di un allegato che sono:
- includes/functions_posting.php
- includes/functions_content.php
- includes/message_parser.php
- includes/acp/acp_users.php
- includes/ucp/ucp_attachments.php
- posting.php
3) La modifica del template, con l'inserimento del nuovo valore. I file da modificare sono:
- styles/prosilver/template/attachments.html
- styles/prosilver/template/posting_editor.html
- styles/prosilver/template/posting_attach_body.html
1) Creazione del campo nella tabella del Database
Da phpmyadim, aprire la tabella afphpbb3_attachments, selezionare il pulsante SQL e lanciare il seguente script che provvede a inserire nella tabella il nuovo campo.:
Codice: Seleziona tutto
ALTER TABLE `phpbb_attachments` add `attach_comment_title` VARCHAR(255) collate utf8_bin NOT NULL default '';
Trova (riga 813):
Codice: Seleziona tutto
'FILE_COMMENT' => (isset($filename_data['filecomment'])) ? $filename_data['filecomment'] : '',
Codice: Seleziona tutto
'FILE_COMMENT_TITLE' => (isset($filename_data['filecomment_title'])) ? $filename_data['filecomment_title'] : '',
Codice: Seleziona tutto
'FILE_COMMENT' => $attach_row['attach_comment'],
Codice: Seleziona tutto
'FILE_COMMENT_TITLE' => $attach_row['attach_comment_title'],
Codice: Seleziona tutto
$sql = 'UPDATE ' . ATTACHMENTS_TABLE . "
SET attach_comment = '" . $db->sql_escape($attach_row['attach_comment']) . "'
WHERE attach_id = " . (int) $attach_row['attach_id'] . '
AND is_orphan = 0';
Codice: Seleziona tutto
$sql = 'UPDATE ' . ATTACHMENTS_TABLE . "
SET attach_comment = '" . $db->sql_escape($attach_row['attach_comment']) . "', attach_comment_title = '" . $db->sql_escape($attach_row['attach_comment_title']) . "'
WHERE attach_id = " . (int) $attach_row['attach_id'] . '
AND is_orphan = 0';
Codice: Seleziona tutto
'attach_comment' => $attach_row['attach_comment'],
Codice: Seleziona tutto
'attach_comment_title' => $attach_row['attach_comment_title'],
Trova (riga 814):
Codice: Seleziona tutto
$row['attach_comment'] = $attachments[$attach_ids[$row['attach_id']]]['attach_comment'];
Codice: Seleziona tutto
$row['attach_comment_title'] = $attachments[$attach_ids[$row['attach_id']]]['attach_comment_title'];
Codice: Seleziona tutto
'COMMENT' => $comment,
Codice: Seleziona tutto
'COMMENT_TITLE' => $comment_title,
Trova (riga 1372);
Codice: Seleziona tutto
$this->filename_data['filecomment'] = utf8_normalize_nfc(request_var('filecomment', '', true));
Codice: Seleziona tutto
$this->filename_data['filecomment_title'] = utf8_normalize_nfc(request_var('filecomment_title', '', true));
Codice: Seleziona tutto
// First of all adjust comments if changed
$actual_comment_list = utf8_normalize_nfc(request_var('comment_list', array(''), true));
foreach ($actual_comment_list as $comment_key => $comment)
{
if (!isset($this->attachment_data[$comment_key]))
{
continue;
}
if ($this->attachment_data[$comment_key]['attach_comment'] != $actual_comment_list[$comment_key])
{
$this->attachment_data[$comment_key]['attach_comment'] = $actual_comment_list[$comment_key];
}
}
Codice: Seleziona tutto
// Mod Add Comment Title
$actual_comment_list_title = utf8_normalize_nfc(request_var('comment_list_title', array(''), true));
foreach ($actual_comment_list_title as $comment_key_title => $comment)
{
if (!isset($this->attachment_data[$comment_key_title]))
{
continue;
}
if ($this->attachment_data[$comment_key_title]['attach_comment_title'] != $actual_comment_list_title[$comment_key_title])
{
$this->attachment_data[$comment_key_title]['attach_comment_title'] = $actual_comment_list_title[$comment_key_title];
}
}
// Fine Mod Add Comment Title
Codice: Seleziona tutto
'attach_comment' => $this->filename_data['filecomment'],
Codice: Seleziona tutto
'attach_comment_title' => $this->filename_data['filecomment_title'],
Codice: Seleziona tutto
'attach_comment'=> $this->filename_data['filecomment']
Codice: Seleziona tutto
'attach_comment_title'=> $this->filename_data['filecomment_title'],
Codice: Seleziona tutto
$this->filename_data['filecomment'] = '';
Codice: Seleziona tutto
$this->filename_data['filecomment_title'] = '';
Codice: Seleziona tutto
'attach_comment' => $this->filename_data['filecomment'],
Codice: Seleziona tutto
'attach_comment_title' => $this->filename_data['filecomment_title'],
Codice: Seleziona tutto
'attach_comment'=> $this->filename_data['filecomment'],
Codice: Seleziona tutto
'attach_comment_title' => $this->filename_data['filecomment_title'],
Codice: Seleziona tutto
$this->filename_data['filecomment'] = '';
Codice: Seleziona tutto
$this->filename_data['filecomment_title'] = '';
Codice: Seleziona tutto
$this->filename_data['filecomment'] = utf8_normalize_nfc(request_var('filecomment', '', true));
Codice: Seleziona tutto
$this->filename_data['filecomment_title'] = utf8_normalize_nfc(request_var('filecomment_title', '', true));
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, real_filename, attach_comment
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, real_filename, attach_comment, attach_comment_title
Codice: Seleziona tutto
set_var($this->attachment_data[$pos]['attach_comment'], $_POST['attachment_data'][$pos]['attach_comment'], 'string', true);
Codice: Seleziona tutto
set_var($this->attachment_data[$pos]['attach_comment_title'], $_POST['attachment_data'][$pos]['attach_comment_title'], 'string', true);
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, real_filename, attach_comment
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, real_filename, attach_comment, attach_comment_title
Codice: Seleziona tutto
set_var($this->attachment_data[$pos]['attach_comment'], $_POST['attachment_data'][$pos]['attach_comment'], 'string', true);
Codice: Seleziona tutto
set_var($this->attachment_data[$pos]['attach_comment_title'], $_POST['attachment_data'][$pos]['attach_comment_title'], 'string', true);
Trova (riga 2025):
Codice: Seleziona tutto
'COMMENT' => nl2br($row['attach_comment']),
Codice: Seleziona tutto
'COMMENT_TITLE' => nl2br($row['attach_comment_title']),
Trova (riga 151):
Codice: Seleziona tutto
'COMMENT' => bbcode_nl2br($row['attach_comment']),
Codice: Seleziona tutto
'COMMENT_TITLE' => bbcode_nl2br($row['attach_comment_title']),
Trova (riga 419):
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, attach_comment, real_filename
Codice: Seleziona tutto
$sql = 'SELECT attach_id, is_orphan, attach_comment, real_filename, attach_comment_title
Trova
Codice: Seleziona tutto
<!-- IF _file.S_IMAGE -->
<dl class="file">
Codice: Seleziona tutto
<!-- IF _file.COMMENT_TITLE --><dd>{_file.COMMENT_TITLE}</dd><!-- ENDIF -->
Trova
Codice: Seleziona tutto
<!-- BEGIN attach_row -->
Codice: Seleziona tutto
<dl>
<dt><label for="filecomment">Nome della specie:</label></dt>
<dd><textarea name="comment_list_title[{attach_row.ASSOC_INDEX}]" id="comment_list_title_{attach_row.ASSOC_INDEX}" rows="1" cols="35" class="inputbox">{attach_row.FILE_COMMENT_TITLE}</textarea></dd>
</dl>
Trova:
Codice: Seleziona tutto
<dl>
<dt><label for="filecomment">{L_FILE_COMMENT}:</label></dt>
<dd><textarea name="filecomment" id="filecomment" rows="1" cols="60" class="inputbox autowidth">{FILE_COMMENT}</textarea></dd>
</dl>
Codice: Seleziona tutto
<dl>
<dt><label for="filecomment_title">Nome della specie:</label></dt>
<dd><textarea name="filecomment_title" id="filecomment_title" rows="1" cols="60" class="inputbox autowidth">(FILE_COMMENT_TITLE)</textarea></dd>
</dl>
Chi c’è in linea
Visitano il forum: Nessuno e 62 ospiti