begin process at 2012 05 31 10:17:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

AU SECOURS ! (je suis prêt à me jeter par la fenêtre)


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

mercredi 2 mars 2005 à 15:50:42 | AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

nougitch

Bonjour,

Je possède un tableau.
J'aimerai que quand je clique sur une donnée elle se colore.
Quand quand je reclique dessus, elle retrouve sa couleur initiale.
Et que je puisse en sélectionner plusieurs (en colorier plusieurs).
Je veux également que quand je passe au dessus d'une ligne avec la souris, elle se colore et bien sûr, que quand je quitte la ligne (toujours avec la souris) elle retrouve sa couleur initiale.
En sachant que mon tableau (même si ce n'est pas le cas dans l'exemple possède des couleurs alternées).

J'aimerai refaire la même chose que dans PhpMyAdmin pour ceux qui voit ce que je veux dire.

Merci mille fois à ceux qui pourront m'aider.
Plusieurs personnes m'ont donnée des éléments de réponse mais je n'arrive pas compiler le tout !

Voici ce que j'ai :
---------------------------------------------
Javascript : general.js
---------------------------------------------
function rowOverEffect(object) {
  if (object.className == 'dataTableRow') object.className = 'dataTableRowOver';
}
function rowOutEffect(object) {
  if (object.className == 'dataTableRowOver') object.className = 'dataTableRow';
}
---------------------------------------------
CSS : stylesheet.css
---------------------------------------------
.dataTableRow { background-color: #F0F1F1; }
.dataTableRowSelected { background-color: #ff0000; }
.dataTableRowOver { background-color: #000000; cursor: pointer; cursor: hand; }
---------------------------------------------
PHP : test.php
---------------------------------------------
<html>
<head>
<link rel="stylesheet" type="text/css" href="stylesheet.css">
<script language="javascript" src="general.js"></script>
</head>
<body>
<?
echo '<table width="300" border="1">';
if (isset($Je ne sais pas ce qu'il faut mettre ???)) {
echo '<tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
else {
echo '<tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
echo '<td>Paris</td></tr>';
if (isset($Je ne sais pas ce qu'il faut mettre ???)) {
echo '<tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
else {
echo '<tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
echo '<td>Lille</td></tr>';
if (isset($Je ne sais pas ce qu'il faut mettre ???)) {
echo '<tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
else {
echo '<tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)">';
}
echo '<td>Lyon</td></tr>';
echo '
<td></td></tr>
</table>';
?>
</body>
</html>
mercredi 2 mars 2005 à 22:23:14 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

ehmarc

Salut

Va voire du coter Javascript

Bon vu que tu est dans la m...

/**
 * Sets/unsets the pointer and marker in browse mode
 *
 * @param   object    the table row
 * @param   interger  the row number
 * @param   string    the action calling this script (over, out or click)
 * @param   string    the default background color
 * @param   string    the color to use for mouseover
 * @param   string    the color to use for marking a row
 *
 * @return  boolean  whether pointer is set or not
 */
function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor)
{
    var theCells = null;

    // 1. Pointer and mark feature are disabled or the browser can't get the
    //    row -> exits
    if ((thePointerColor == '' && theMarkColor == '')
        || typeof(theRow.style) == 'undefined') {
        return false;
    }

    // 2. Gets the current row and exits if the browser can't get it
    if (typeof(document.getElementsByTagName) != 'undefined') {
        theCells = theRow.getElementsByTagName('td');
    }
    else if (typeof(theRow.cells) != 'undefined') {
        theCells = theRow.cells;
    }
    else {
        return false;
    }

    // 3. Gets the current color...
    var rowCellsCnt  = theCells.length;
    var domDetect    = null;
    var currentColor = null;
    var newColor     = null;
    // 3.1 ... with DOM compatible browsers except Opera that does not return
    //         valid values with "getAttribute"
    if (typeof(window.opera) == 'undefined'
        && typeof(theCells[0].getAttribute) != 'undefined') {
        currentColor = theCells[0].getAttribute('bgcolor');
        domDetect    = true;
    }
    // 3.2 ... with other browsers
    else {
        currentColor = theCells[0].style.backgroundColor;
        domDetect    = false;
    } // end 3

    // 4. Defines the new color
    // 4.1 Current color is the default one
    if (currentColor == ''
        || currentColor.toLowerCase() == theDefaultColor.toLowerCase()) {
        if (theAction == 'over' && thePointerColor != '') {
            newColor              = thePointerColor;
        }
        else if (theAction == 'click' && theMarkColor != '') {
            newColor              = theMarkColor;
            marked_row[theRowNum] = true;
        }
    }
    // 4.1.2 Current color is the pointer one
    else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
             && (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
        if (theAction == 'out') {
            newColor              = theDefaultColor;
        }
        else if (theAction == 'click' && theMarkColor != '') {
            newColor              = theMarkColor;
            marked_row[theRowNum] = true;
        }
    }
    // 4.1.3 Current color is the marker one
    else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
        if (theAction == 'click') {
            newColor              = (thePointerColor != '')
                                  ? thePointerColor
                                  : theDefaultColor;
            marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
                                  ? true
                                  : null;
        }
    } // end 4

    // 5. Sets the new color...
    if (newColor) {
        var c = null;
        // 5.1 ... with DOM compatible browsers except Opera
        if (domDetect) {
            for (c = 0; c < rowCellsCnt; c++) {
                theCells[c].setAttribute('bgcolor', newColor, 0);
            } // end for
        }
        // 5.2 ... with other browsers
        else {
            for (c = 0; c < rowCellsCnt; c++) {
                theCells[c].style.backgroundColor = newColor;
            }
        }
    } // end 5

    return true;
} // end of the 'setPointer()' function

C'est pas du tout le script (ironie) qu'il y a dans phpmyadmin  
ensuite sur tes lignes

<tr onmouseover="setPointer(this, 0, 'over', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 0, 'out', '#DDDDDD', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 0, 'click', '#DDDDDD', '#CCFFCC', '#FFCC99');">


<td>kjqsdjklfklhhkjdfhgljh<td>....</tr>


ver="setPointer(this, 1, 'over', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 1, 'out', '#CCCCCC', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 1, 'click', '#CCCCCC', '#CCFFCC', '#FFCC99');">

<td>kjqsdjklfklhhkjdfhgljh<td>....</tr>

surtout tu as un chiffre (0 sur le premier et 1 sur le second) il ne faut surtout pas oublier de l'incrementer au fur et a mesure de tes ligne sinon ca va planter le reste c'est des couleurs

bon courage
++

"Aucun de nous ne sait ce que nous savons tous, ensemble."
Lao Tseu inventeur du "copier coller"

jeudi 3 mars 2005 à 00:34:35 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

Anthomicro

Salut,

c'est quand même un script énorme, essaies ça :

<html>
<script type="text/javascript">
    function couleur(element)
    {
        if(element.style.backgroundColor=='#f0f0f0' || element.style.backgroundColor=='rgb(240, 240, 240)')
        {
            element.style.backgroundColor='#6487dc';   
        }
        else
        {
            element.style.backgroundColor='#f0f0f0';
        }
    }
</script>
<table>
    <tr>
        <th>Entête 1</th><th>Entête 2</th>
    </tr>
    <tr>
        <td onclick="javascript:couleur(this)">Test</td><td onclick="javascript:couleur(this)">Test 2</td>
    </tr>
</table>
</html>

et adapte-le en fonction des couleurs que tu souhaites ;-)

bye


    jeudi 3 mars 2005 à 00:35:30 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

    Anthomicro

    je précise que rgb(240, 240, 240) et #f0f0f0 c'est pareil, c'est juste pour que firefox soit compatible avec le script...


      jeudi 3 mars 2005 à 01:06:03 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

      ehmarc

      salut

      en meme temps jai pas essayer de reinventeer la roue ce script il est dans phpmyadmin dans le fichier function.js voili voilou....

      ++

      "Aucun de nous ne sait ce que nous savons tous, ensemble."
      Lao Tseu inventeur du "copier coller"

      jeudi 3 mars 2005 à 11:28:33 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

      nougitch

      Bonjour et merci pour vos réponses !

      J'ai essayé les deux :
      --> ehmarc : je n'ai pas réussi à la faire fonctionner. J'ai regarder dans PHPMyAdmin. En effet, la fonction est correcte mais dans un cas concret, elle ne fonctione pas.
      Peux-tu me montrer un exemple HTML qui fonctionne avec cette fonction.

      --> Anthomicro : Cela fonctionne aussi mais je n'ai pas la surbrillance avec le "onmouseover" et surtout, le fait que mon tableau est composé de couleurs alternées.

      Merci de votre aide !
      jeudi 3 mars 2005 à 13:02:51 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

      Anthomicro

      Salut,

      tu peux nous passer ton code html (un petit bout), ensuite les couleurs sont alternées d'origine ?

      Tu veux que la couleur change sur un onmouseover ? il aurait fallu le faire en CSS mais bon, IE ne gère pas le hover si c'est pas pour un lien va encore falloir faire du JS...




        jeudi 3 mars 2005 à 13:04:52 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

        Anthomicro

        J'aime le sujet de ce topic : "AU SECOURS ! (je suis prêt à me jeter par la fenêtre)"

        LOL


          jeudi 3 mars 2005 à 13:21:56 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

          nougitch

          Re Anthomicro,

          C'est gentil de prendre le temps parce que là je suis sur le rebords...
          Le "sujet" est super important, c'est ce qui va donner envie d'aller voir ou non :-)

          Voici mon code, merci beaucoup !

          Ma BDD s'appelle 'blark'

          #
          # Structure de la table `application`
          #

          CREATE TABLE application (
          id_application int(8) NOT NULL auto_increment,
          name_application varchar(255) NOT NULL default '',
          type_application tinyint(1) NOT NULL default '0',
          PRIMARY KEY (id_application)
          ) TYPE=MyISAM;

          #
          # Contenu de la table `application`
          #

          INSERT INTO application VALUES (9, 'Summarization', 0);
          INSERT INTO application VALUES (3, 'Classification', 0);
          INSERT INTO application VALUES (4, 'Indexing', 0);
          INSERT INTO application VALUES (6, 'Dictation', 0);
          INSERT INTO application VALUES (22, 'Document Production', 0);

          Ma page s'appelle application.php

          <?
          include("_connexion.php");
          echo "<form method='post' action='application_add.php'>
          Application <input name='application_name' type='text' size='30'><br><br>
          <input name='application_type' type='radio' value='0'> Spoken language<br>
          <input name='application_type' type='radio' value='1'> Written language<br><br>
          <input type='submit' value='Add'>
          </form>
          <div class='erreur'>";
          if($_GET['erreur'] == 1) {
          echo "<br>Error : you didn't enter the application's name !<br><br>";
          }
          elseif($_GET['erreur'] == 2) {
          echo "<br>Error : you didn't select the application's type !<br><br>";
          }
          echo "</div><br>";
          $request=mysql_query("SELECT * FROM application ORDER BY id_application ASC",$link);
          $total=mysql_num_rows($request);
          if ($total > 0) {
          echo "<table width='0' cellpadding='0' cellspacing='1' border='0'>";
          while($table=mysql_fetch_array($request,MYSQL_ASSOC)) {
          $color = ($i % 2) ? "#ffffff" : "#bbc3d3" ;
          $i++ ;
          echo "<tr><td width='70' bgcolor=$color class='contents'>&nbsp;ID = $table[id_application]</td>
          <td width='190' bgcolor=$color class='contents'>&nbsp;$table[name_application]</td>
          <td width='25' align='center' bgcolor=$color class='contents'><b>";
          if ($table[type_application] == 0) {
          echo "<div title='Spoken language'>SL</div></b></td>";
          }
          else {
          echo "<div title='Written language'>WL</div></b></td>";
          }
          echo "<td width='25' align='center' bgcolor=$color class='contents'><a href='#' title='Edit $table[name_application]'><img src='../images/edit.gif' border='0'></a></td>
          <td width='25' align='center' bgcolor=$color class='contents'><a href='application_del.php?id=$table[id_application]' title='Delete $table[name_application]'><img src=\"../images/delete.gif\" border=\"0\" onClick=\"return confirm('Are you sure you want to delete $table[name_application] ?');\"></a></td></tr>";
          }
          echo "</table>";
          }
          else {
          echo "Il n'y a pas d'enregistrements";
          }
          ?>
          jeudi 3 mars 2005 à 13:27:43 | Re : AU SECOURS ! (je suis prêt à me jeter par la fenêtre)

          Anthomicro

          Ouch, c'est long...

          remplis ton code html sans php avec un peu de texte et les couleurs d'origine (deux lignes de cellules histoire de voir la différence, et précise ce que tu souhaites directement stp)

          par exemple : la couleur qui change quand on clique, c'est fait (voir code JS plus haut)

          Tu veux également que lorsqu'on passe la souris ça change de couleur, et lorsqu'on enlève la souris ça reprend la couleur lorsque tu avais cliqué dessus, c'est ça ?



            1 2 3

            Cette discussion est classée dans : echo, object, classname, datatablerow, datatablerowover


            Répondre à ce message

            Sujets en rapport avec ce message

            Comment faire un caddie en tutilisant les sessions [ par ohan ] Bonjour,Est ce que vous pourriez me dire comment faire un caddie pour une boutique en ligne et utilisant les sessions de php4J'ai déjà fais la page de Comment faire un caddie en utilisant les sessions [ par ohan ] Bonjour,Est ce que vous pourriez me dire comment faire un caddie pour une boutique en ligne et utilisant les sessions de php4J'ai déjà fais la page de Probeleme y a rien qui s'affiche [ par g0belin ] Pk mes donnee elle ne s'affiche pas sa cree le tableau avec le bon nombre de trous mais sa ne met pas les donnee.------------------------------------- Concaténation de nom de variables ! [ par fil ] Concaténation de nom de variables !bonjour j'ai un petit problème je voudrais creer des noms de variable dynamiquement dans une boucle :J'ai des varia sa bug [ par g0belin ] Parse error: parse error, unexpected $ in c:\easyphp\www\site\news_com.php on line 240--------CODE (note. ligne 240 fin de la pge html)----require "/p PHP et Javascript [ par romagnoli64 ] Bonjour à tout le monde! J'espère que vous pourrez m'aider!! Voilà mon problème, j'ai un fichier "test.php3", dans lequel une fonction en Javascript e onChange, javascript probleme de lien avec des parametres [ par pcpourtous ] Bonjour, voila :echo"";echo"function on_change(){ window.location.href = \"stock.php?agence=$agence&type=.$type.&nom_categ=.$nom_categ.&nom_marque=.$n echo $idcateg["macolonne"]; [ par fil ] mysql_select_db($database, $perles);$query_idcateg = sprintf("SELECT $mescolonnes FROM $matable WHERE $matable = '%s'", $colname_idcateg);$idcateg = m Prb d'adresse [ par saad123 ] bonjourg un ch'tit problème! en fait , c pour changer l'adresse qu'il y'a dans la barre "adresse" du navigateur ( en dessous de précédent) . l'utilisa comment faire un lien en php ? [ par coolboy78 ] Bonjour voila je débute en php, et donc jaimerai renvoyé les utilisateur dans différente page selon leur identification.voici la parti ou il ya un pb


            Nos sponsors


            Sondage...

            Comparez les prix

            CalendriCode

            Mai 2012
            LMMJVSD
             123456
            78910111213
            14151617181920
            21222324252627
            28293031   

            Consulter la suite du CalendriCode

            Photothèque

            A découvrir



             
            Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
            CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
            CodeS-SourceS.com© est une marque déposée tous droits réservés

            Google Coop CodeS-SourceS Google Coop CodeS-SourceS
            Temps d'éxécution de la page : 0,593 sec (4)

            Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales