MySQL - texte long

Résolu/Fermé
Utilisateur anonyme - 20 sept. 2008 à 23:57
 Utilisateur anonyme - 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.
A voir également:

6 réponses

Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 2 330
21 sept. 2008 à 00:57
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.
3
Utilisateur anonyme
21 sept. 2008 à 01:05
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 .
1
kryoportail Messages postés 222 Date d'inscription dimanche 10 août 2008 Statut Membre Dernière intervention 22 mai 2014 125
21 sept. 2008 à 01:08
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
1
Utilisateur anonyme
21 sept. 2008 à 01:15
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
-- https://www.phpmyadmin.net/
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
donuts08 Messages postés 519 Date d'inscription dimanche 13 novembre 2005 Statut Membre Dernière intervention 15 octobre 2008 39
21 sept. 2008 à 01:05
bonjour,

ça dépend vu que maintenant les jeunes mariés peuvent garder les deux noms... ça risque de faire de jolies choses XD
-1
Utilisateur anonyme
26 sept. 2008 à 19:12
c'est bon, j'ai régler le problème :
le synopsis s'écrit dans un fichier texte.
-1