Visualizzazione risultati 1 fino 4 di 4

Discussione: campo con punto esclamativo

  1. #1
    Guest

    Predefinito campo con punto esclamativo

    Salve a tutti,
    ho un database mysql sul av e tramite uno script php eseguo delle select sulle tabelle per poi inviare il risultato in una email in formato html.
    Nell'email si visualizzano le tabelle, solo che in due celle compare un punto esclamativo. Faccio uno schema delle select:

    Select tab1.a tab1.b tab2.c tab3,d
    from tab1, tab2
    where tab1.tab2_id = tab2.id and tab1.tab3_id = tab3_id

    tab1.a tab1.b sono valori numerici float
    mentre i campi tab2.c e tab3.d sono stringe varchar

    Per capire la causa dell'errore ho fatto delle modifiche alla select eliminando i campi stringhe tab2.c, e tab3.d e il punto esclamativo non è comparso più.
    Ho pensato che il problema fosse nelle tab2 o tab 3 . Ho eseguito il controllo in phpmysqmin su entrambe e mi da l'ok.
    Facendo altre modifiche nella select iniziale, come inserendo nella select group by tab1.a, il punto esclamativo si sposta in altre celle.
    Qualcuno mi sa dire il significato o come eliminarlo dalla cella
    Grazie in anticipo.

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Temo che sia la query ad essere sbagliata:
    - i nomi dei campi nella clausola SELECT dovrebbero essere separati da virgola: mettendo uno spazio specifichi solo degli "alias" che puoi usare nel resto della query
    - nella clausola FROM vanno specificate tutte le tabelle dalle quali sono estratti i record (visualizzati o anche solo elaborati, come ad esempio per le JOIN).

    Dovresti però specificare, per avere la query corretta:
    - cosa rappresenta ciascun record nelle tabelle tab1, tab2 e tab3
    - qual è l'obiettivo della tua query (ovvero come combinare i dati delle tre tabelle per ottenerne una nuova da visualizzare all'utente).

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    Guest

    Predefinito

    hai ragione,
    ho scritto sbrigativamente la select esempio commettendo degli errori che nell'originale non sono presenti
    ecco corretta:
    Select tab1.a, tab1.b, tab2.c, tab3.d
    from tab1, tab2, tab3
    where tab1.tab2_id = tab2.id and tab1.tab3_id = tab3_id;

    tab1.a tab1.b sono campi numerici a cui ho assegnato valore float
    tab2.c e tab3.d sono campi di stringhe valore varchar.

    Credo di essere pervenuto alla causa del problema. Nel campo tab2.c varchar ci sono due stringhe di caratteri separate da uno spazio. Ho inserito solo una parola e nella email non è comparso più il punto esclamativo nella cella. Mi pare di capire che inserire più parole all'interno di un campo sfalsa la formattazione della tabella inserendo dei caratteri non voluti e spostando qualche numero.
    Se ho ragione come potrei fare per mantener gli spazi e quindi piu parole nel campo senza avere questo inconveniente?

    ciao

  4. #4
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Citazione Originalmente inviato da tariffeconomiche Visualizza messaggio
    ... tab1.a tab1.b sono campi numerici a cui ho assegnato valore float
    tab2.c e tab3.d sono campi di stringhe valore varchar.

    Credo di essere pervenuto alla causa del problema. Nel campo tab2.c varchar ci sono due stringhe di caratteri separate da uno spazio. Ho inserito solo una parola e nella email non è comparso più il punto esclamativo nella cella. Mi pare di capire che inserire più parole all'interno di un campo sfalsa la formattazione della tabella inserendo dei caratteri non voluti e spostando qualche numero.
    Se ho ragione come potrei fare per mantener gli spazi e quindi piu parole nel campo senza avere questo inconveniente?
    Mi stai parlando prima di "stringhe varchar" e poi di "email", ma non hai ancora risposto alla mia domanda precedente:
    Citazione Originalmente inviato da dementialsite Visualizza messaggio
    Dovresti però specificare, per avere la query corretta:
    - cosa rappresenta ciascun record nelle tabelle tab1, tab2 e tab3
    - qual è l'obiettivo della tua query (ovvero come combinare i dati delle tre tabelle per ottenerne una nuova da visualizzare all'utente).
    Aggiungo qui: immagino che tab1, tab2, tab3, a, b, c e d non siano i veri nomi dei campi... non è che abbia la sfera di cristallo per capire da solo le funzioni, soprattutto con dei nomi del genere...

    Avresti, inoltre, una pagina in cui visualizzi questo problema?

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •