[PHP e MYSQLI] Sistema sotto categorie
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
[PHP e MYSQLI] Sistema sotto categorie
Salve, ho questa tabella:
[code2=sql]CREATE TABLE `news_categorie` (
`id` bigint(8) unsigned auto_increment,
`id_parent` bigint(8),
`titolo` varchar(255),
`ordine` int,
`data` datetime,
`active` int ,
`_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY titolo(titolo)) ENGINE = MyISAM;[/code2]
Ho aggiunto id_parent,
come faccio ad gestire le sotto categorie con insert/update?
con questo form in allegato:
mi dite come posso fare? perché non sto capendo più nulla leggendo in inglese come fare..
ma non so come applicarlo al mio.
grazie mille e buona serata.
[code2=sql]CREATE TABLE `news_categorie` (
`id` bigint(8) unsigned auto_increment,
`id_parent` bigint(8),
`titolo` varchar(255),
`ordine` int,
`data` datetime,
`active` int ,
`_update` TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`id`),
UNIQUE KEY titolo(titolo)) ENGINE = MyISAM;[/code2]
Ho aggiunto id_parent,
come faccio ad gestire le sotto categorie con insert/update?
con questo form in allegato:
mi dite come posso fare? perché non sto capendo più nulla leggendo in inglese come fare..
ma non so come applicarlo al mio.
grazie mille e buona serata.
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
ha scordavo anche la creazione della categoria con il mio form.
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
non trovo nessun tutorial decente.. ho perché sono io che non so il termine esatto o è google che va in tilt.
tanto cerco se trovo qualcosa, aspettando una riposta qui.
tanto cerco se trovo qualcosa, aspettando una riposta qui.
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
eccomi ho trovato qualcosa di funzionante... solo che c'è da riparare qualcosa.
il codice è questo:
ma mi fa in questo modo:
idee per riparare gli errori?
vi ringrazio molto.
il codice è questo:
Codice: Seleziona tutto
<?php
$db = new mysqli("localhost", "root", "","Sql429590_1");
?>
<?php
$first_level_cats = $db->query("SELECT * FROM news_categorie");
echo '<ol>';
while($row = $first_level_cats->fetch_array()) { ?>
<li><a href=""><?php echo $row['titolo']; ?></a></li>
<?php
$second_level_cats = $db->query("SELECT * FROM news_categorie WHERE id_parent = ".$row['id']."");
echo '<ol>';
while($row = $second_level_cats->fetch_array()) { ?>
<li><a href=""><?php echo $row['titolo']; ?></a></li>
<?php
$third_level_cats = $db->query("SELECT * FROM news_categorie WHERE id_parent = ".$row['id']."");
echo '<ol>';
while($row = $third_level_cats->fetch_array()) { ?>
<li><a href=""><?php echo $row['titolo']; ?></a></li>
<?php
}
echo '</ol>'; //third level close
}
echo '</ol>'; // second level close
}
echo '</ol>'; // first level close
?>vi ringrazio molto.
Re: [PHP e MYSQLI] Sistema sotto categorie
Aggiungi "WHERE id_parent IS NULL" nella prima query.
Considera però che così se bloccato ad al massimo 3 livelli di categorie.
Ti conviene fare una funzione ricorsiva.
Tipo:
Considera però che così se bloccato ad al massimo 3 livelli di categorie.
Ti conviene fare una funzione ricorsiva.
Tipo:
Codice: Seleziona tutto
function menuCategoria( $db, $idParent = '' ){
if( $idParent ){
$where = "WHERE id_parent = " . intval($idParent);
}else{
$where = "WHERE id_parent IS NULL";
}
$cats = $db->query("SELECT * FROM news_categorie $where");
$html = '<ol>';
while($row = $cats->fetch_array()) {
$html .= '<li>';
$html .= '<a href="">' . $row['titolo'] . '</a>';
if( $row['id_parent'] ){
$html .= menuCategoria( $db, $row['id_parent'] );
}
$html .= '</li>';
}
$html .= '</ol>';
return $html;
}Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
ok, appena posso provo.. e scusa del ritardo ma non mi era arrivata la notifica email....
ti ringrazio , verso sera provo.
buona giornata.
ti ringrazio , verso sera provo.
buona giornata.
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
scusa, ma come la richiamo la funzione??
grazie mille...
grazie mille...
Re: [PHP e MYSQLI] Sistema sotto categorie
così:
Codice: Seleziona tutto
echo menuCategoria($db);Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
niente, mi da output:
nel sorgente "view source page" nel browser.
come mai?
nel sorgente "view source page" nel browser.
Codice: Seleziona tutto
<ol></ol>
Re: [PHP e MYSQLI] Sistema sotto categorie
Difficile dirlo, fai un po di debug.
Prima di aprire una discussione leggi le Guide, poi vedi se c'è un HowTo nel Wiki e fai una ricerca nel Forum!
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
Applica semplicemente il [Risolto]! Prova: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=548821
Vuoi qualcosa di piu' dal forum? Prova i miei script: http://forum.ubuntu-it.org/viewtopic.php?f=70&t=597066
-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
guarda zoff ho trovato questo tutorial e mi funziona .. l'unico se mi dai una mano ad mettere <li></li> invece dei ---
ti ringrazio molto e buona settimana, aspetto risposta..
ti ringrazio molto e buona settimana, aspetto risposta..
Codice: Seleziona tutto
<?php
$db = new mysqli('localhost', 'root', '','test');
/*
* PHP code to traverse hierarchical data (adjacency list model)
* http://salman-w.blogspot.com/2012/08/php-adjacency-list-hierarchy-tree-traversal.html
*/
$data = array();
$index = array();
$query = $db->query("SELECT id, id_parent, titolo FROM news_categorie ORDER BY data");
while ($row = $query->fetch_assoc()) {
$id = $row["id"];
$parent_id = $row["id_parent"] === NULL ? "NULL" : $row["id_parent"];
$data[$id] = $row;
$index[$parent_id][] = $id;
}
/*
* Recursive top-down tree traversal example:
* Indent and print child nodes
*/
function display_child_nodes($parent_id, $level)
{
global $data, $index;
$parent_id = $parent_id === NULL ? "NULL" : $parent_id;
if (isset($index[$parent_id])) {
foreach ($index[$parent_id] as $id) {
echo str_repeat("-", $level) . $data[$id]["titolo"] . "<br>";
display_child_nodes($id, $level + 1);
}
}
}
display_child_nodes(NULL, 0);
?>-
treled
- Entusiasta Emergente

- Messaggi: 1331
- Iscrizione: lunedì 26 aprile 2010, 17:36
- Desktop: gnome
- Distribuzione: ubuntu 23.04/22.04
- Sesso: Maschile
- Località: Massa(MS)
Re: [PHP e MYSQLI] Sistema sotto categorie
niente aiutino??
grazie e buona serata.
grazie e buona serata.
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 2 ospiti
