Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Troppi valori in un array vorrei...

    ciao a tutti,
    mi trovo nella stessa difficoltà:

    ho una serie di strutture che stampo in questo modo.

    codice:
    <input type="checkbox" value="<?php echo $res_str['id']; ?>" name="selstr<?php echo "[".$res_str['id']."]"; ?>" /
    
    <?php echo $res_str['nome']; 
    
    <input type="text" value="" name="costostr<?php echo "[".$res_str['id']."]"; ?>" size="5" />
    subito dopo cerco di registrare l'array su db utilizzando << implode(";",$_POST["selstr"]); >> e << implode(";",$_POST["costostr"]); >>

    il problema è che in array mi ritrovo il checkbox OK (solo i valori selezionati) mentre per il campo "costostr[n]" mi ritrovo, insieme ai valori compilati, tanti ";" per quante sono le strutture.

    quindi: se di 10 strutture cecco solo 2 id e inserisco degli importi per queste due, nell'array mi ritrovo:

    arrayCHECK 1,2 <--le strutture selezionate
    arrayCOSTOSTR 10;20;;;;;;;;; <--i valori delle due strutture selezionate + tutte le altre strutture senza, ovviamente, valori numerici xè non li ho inseriti.

    che faccio?
    :master:
    ---------------------------
    danielix05

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    potesti pulire $_POST["costostr"] dalle stringhe vuote
    Codice PHP:
    $contatore=0;
    for (
    $i=0$i<$_POST["costostr"].lenght$i++){
    if (!empty(
    $_POST["costostr"][i]){
    $array_tutto_pieno[$contatore] = $_POST["costostr"][i];
    $contatore++;
    }

    fa al caso tuo?

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3

    grazie oronze della tua risposta

    ho provato ad applicare il tuo script ma mi dà
    codice:
    Parse error: syntax error, unexpected '{' in /elaborazione.php on line 19
    tolgo la parentesi e mi restituisce
    codice:
    Parse error: syntax error, unexpected T_VARIABLE in /elaborazione.php on line 20
    ho provato in questo modo

    Codice PHP:
    $vettore_filtrato array_filter($_POST["costostr"]); 

    print_r(array_filter($vettore_filtrato)); 
    e mi restituisce

    codice:
    Array ( [1] => 100 [2] => 110 )
    ma non riesco a capire come poter registrare questi valori (100 e 110) sul db, visto che - se ci provo - mi registra "array".
    ---------------------------
    danielix05

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.