Posez votre question Signaler

MySQL - texte long [Résolu]

sonik21 1054Messages postés 17 novembre 2007Date d'inscription 11 décembre 2011Dernière intervention - Dernière réponse le 26 sept. 2008 à 19:12
Bonjour,
je suis en train de créer un script permettant de noter des films, et d'ajouter des films à la liste.
J'ai créer une table avec 8 champs :
id (INT - autoincrémente) ; titre (TEXT) ; realisateur (VARCHAR 2000) ; acteurs (VARCHAR 2000) ; pochette (VARCHAR 2000) ; synopsis (TEXT) ; sortie (VARCHAR 20) ; genre (VARCHAR 100)
Ce la fonctionne bien... sauf que dès que le synopsis commence a faire 4 ou 5 lignes, sa ne rentre plus rien dans la base de donnée MySQL.
Je voudrais savoir si il existe un type permettant de rentrer de très longs textes dans une base de donnée.
merci d'avances pour vos réponses.
Lire la suite 

MySQL - texte long »

6 réponses
Réponse
+0
moins plus
Yep,
C'est curieux parce qu'en général, MySQL limite une variable de type TEXT à 65535 caractères, et sur un moniteur usuel, ça fait un peu plus que 4 ou 5 lignes ;-) Ca doit être une limitation, tu as installé la base toi-même ou elle t'es fournie par un FAI ou autre service d'hébergement ?

Sinon tu peux utiliser le type MEDIUMTEXT voire LONGTEXT :
ALTER TABLE nomtable CHANGE synopsis synopsis MEDIUMTEXT;
En passant 2000 caractères c'est énorme pour des noms/prénoms.
Ajouter un commentaire
Réponse
+0
moins plus
enfait j'ai testé avec Wamp en local sur phpmyadmin.
je vais essayer avec mediumtext ou longtext.
merci

EDIT : mêmes résultats avec MEIUMTEXT et LONGTEXT .
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Je confirme la réponse de Yoan...
Si tu as déclaré Synopsis en TEXT ca devrait le faire !

Et si cela ne suffit pas, la page officielle du manuel MySql sur les types de données acceptés : http://dev.mysql.com/doc/refman/5.0/fr/storage-requirements.html.

Donc hormis si tu es en MyISAM et que ta ligne fait plus de 65535 octets, tu ne devrais pas atteindre la limitation. Et si tu atteint la limitation, par defaut, je crois que Mysql 'cut' le texte pour que ca rentre dans les cases...

Ne serait-ce pas plutôt ta requête SQL d'insertion ou de mise à jour qui foire !?

Voilà si tu trouves pas, exporte la structure de ta table et envoi nous la requète qu'on voit un peu de ce qu'il s'agit...

Amicalement,
S@M...
http://kryoportail.ath.cx
Ajouter un commentaire
Réponse
+0
moins plus
je vai aller voir sur le site que tu a donné kryoportail.
voici le formulaire, la requete et la table.

formlaire d'envoi :
<form action="films_ajout.php" method="post">


Titre du film :<input type="text" size=20 name="titre"/><br>
Genre :<input type="text" size=12 name="genre"/><br>
Réalisateur :<input type="text" size=15 name="real" /><br>
Acteurs principaux :<input type="text" size=30 name="acteurs" /><br>
Date de sortie officiel (en France) :(jj/mm/aaaa)<input type="text" size=12 name="sortie" /><br>
Synopsis :<br><textarea name="synopsis" cols=70 rows=20></textarea><br>
URL de la pochette :<input type="text" size=40 name="pochette"/><br>

<input type="submit" value="Ajouter" />
</form>


page films_ajout.php :

<?php
$titre = $_POST['titre'];
$real = $_POST['real'];
$acteurs = $_POST['acteurs'];
$pochette = $_POST['pochette'];
$synopsis = $_POST['synopsis'];
$sortie = $_POST['sortie'];
$genre = $_POST['genre'];
?>


<?php
mysql_connect("localhost", "root");
mysql_select_db("juza_all");


mysql_query("INSERT INTO films VALUES('', '$titre', '$real', '$acteurs', '$pochette', '$synopsis', '$sortie', '$genre')");

mysql_close();
?>

<?php
echo "Le film \"".$titre."\"a bien été ajouté à la liste";
?>

table :

-- phpMyAdmin SQL Dump
-- version 2.11.6
-- http://www.phpmyadmin.net
Ajouter un commentaire
Réponse
-2
moins plus
bonjour,

ça dépend vu que maintenant les jeunes mariés peuvent garder les deux noms... ça risque de faire de jolies choses XD
Ajouter un commentaire
Réponse
-2
moins plus
c'est bon, j'ai régler le problème :
le synopsis s'écrit dans un fichier texte.
Ajouter un commentaire
Ce document intitulé « MySQL - texte long » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook