ziedinjsh Posted July 1, 2011 Report Share Posted July 1, 2011 Sveiki! ir tāda lieta.. sākuma lapā ir viens input feilds kur ieraksta nick /test/.. tad aiziet uz lapu kur url ir index.php?nick=test kko ierakstos textarea saglabājas datubāzē un parādā to iekš div.. Gribu panāk lai manis rakstīto tekstu parāda zaļā krāsā, meiģināju šādi if($_GET['nick']==$data['nick']){ echo "zaļš teksts": }else{ echo "parasts teksts"; } bet nu neiet.. if($nick=$_GET['nick']){ $data = mysql_fetch_array( mysql_query("SELECT * FROM saturs WHERE nick='".$_GET['nick']."' ORDER BY id DESC")); $niks = mysql_real_escape_string($_GET['nick']); echo "<div class='screen'>"; if($_GET['nick']==$data['nick']){ echo "<div id='show' style='color:green;'></div>"; }else{ echo "<div id='show'></div>"; } echo "</div>"; // apaksha echo "<div class='options'>"; echo "<span class='error' style='display:none;color:green;'>No sākuma ieraksti kaut ko...</span>"; echo "<span class='success' style='display:none;'>ir ok</span>"; echo " <form method='post' name='form'> <input type='hidden' name='nick' id='nick' value='".$_GET['nick']."'> <textarea name='message' id='message' class=''></textarea> <input type='submit' name='add' id='add' value='spied' class=''> </form> "; echo "</div>"; echo "</div>"; } Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted July 1, 2011 Report Share Posted July 1, 2011 uztaisi: print_r($data); pēc tā kā esi izpildījis selektu - varbūt esi atslēdzis visus brīdinājumu un kļūdu paziņojumus un pēc nepareiza indeksa atsaucies uz masīvu. Quote Link to comment Share on other sites More sharing options...
xPtv45z Posted July 1, 2011 Report Share Posted July 1, 2011 Es brīnos kā tev nav apnicis programmēt, jo tu to jau dari vairāk kā 2 gadus, bet vēl joprojām spēj uzrakstīt kaut ko tik "ģeniālu". Cits jau sen būtu padevies. if($nick=$_GET['nick']){ $data = mysql_fetch_array( mysql_query("SELECT * FROM saturs WHERE nick='".$_GET['nick']."' ORDER BY id DESC")); $niks = mysql_real_escape_string($_GET['nick']); echo "<div class='screen'>"; if($_GET['nick']==$data['nick']){ Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted July 1, 2011 Author Report Share Posted July 1, 2011 (edited) Array ( [0] => 17 [id] => 17 [1] => test [nick] => test [2] => testējam, testējam, testējam [message] => testējam, testējam, testējam ) domāju ka problēma varētu būt tajā, ka dati tiek iavadīti un izvadīti ar ajax palīdzību. kad refrešo lapu tad vissi teksti paliek zaļi. js: $(function() { $("#add").click(function() { var nick = $("#nick").val(); var message = $("#message").val(); var dataString = 'nick='+ nick + '&message='+ message; if(nick=='' || message=='') { $('.success').fadeOut(500).hide(); $('.error').fadeOut(500).show(); } else { $.ajax({ type: "POST", url: "add.php", data: dataString, success: function(){ $('.success').fadeIn(500).show(); $('.error').fadeOut(500).hide(); $('#message').val(''); } }); } return false; }); }); var loadData = function(){ $('#show').hide().load('show.php').show().fadeIn(500); }; var startLoading = function(){ loadData(); window.setTimeout("startLoading()", 1000); }; $(document).ready(function(){ startLoading(); }); Edited July 1, 2011 by ziedinjsh Quote Link to comment Share on other sites More sharing options...
ziedinjsh Posted July 1, 2011 Author Report Share Posted July 1, 2011 Es brīnos kā tev nav apnicis programmēt, jo tu to jau dari vairāk kā 2 gadus, bet vēl joprojām spēj uzrakstīt kaut ko tik "ģeniālu". Cits jau sen būtu padevies. if($nick=$_GET['nick']){ $data = mysql_fetch_array( mysql_query("SELECT * FROM saturs WHERE nick='".$_GET['nick']."' ORDER BY id DESC")); $niks = mysql_real_escape_string($_GET['nick']); echo "<div class='screen'>"; if($_GET['nick']==$data['nick']){ domjai par šo?? $_GET['nick']==$data['nick'] zinu ka varu izmantot $_GET['nick'] vietā $niks Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted July 1, 2011 Report Share Posted July 1, 2011 (edited) zinu ka varu izmantot $_GET['nick'] vietā $niks tikai tad ja ir ieslegt register_globals = On. kas ir ļoti slikti, un šobrīd defoltais standrts ir ka viņi ir izslēgti, un neviens kautcik sakarīgs hostings viņus neprslēgs uz On. Edited July 1, 2011 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
Rincewind Posted July 1, 2011 Report Share Posted July 1, 2011 (edited) Uzrakstīju muķības. Edited July 1, 2011 by Rincewind Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted July 1, 2011 Report Share Posted July 1, 2011 (edited) mysql_fetch_array mysql_fetch_assoc nav nekādas lielas starpības, ātrdarbības ieguvums ir ļoti, ļoti niecīgs. cita labuma nav. @ziedinjsh 1. mysql_real_escape_string() lietojam PIRMS kverija 2. tev nav jāpārbauda vai niks no DB sakritis ar niks no formas, jo ja jau būs pozitīva atbilde no DB tad tāpat skaidrs ka dati sakrīt, pārbaudi vai vispār tiek atgriezti dati no DB. 3. $_GET datus velams apstrādāt ar trim(), kas no abiem galiem apcirps atstarpes un tab simbolus (kuri nav redzmi it ipaši no beigām, useris var savdīt n tos simbolus) pārējo īsti nekomentēšu, tā IF konstrukcija pamtā ir pareiza. Edited July 1, 2011 by Grey_Wolf Quote Link to comment Share on other sites More sharing options...
briedis Posted July 1, 2011 Report Share Posted July 1, 2011 Domāju, ka problēma varētu būt šajā rindiņā: if($nick=$_GET['nick']){ Quote Link to comment Share on other sites More sharing options...
mounkuls Posted July 1, 2011 Report Share Posted July 1, 2011 Tieši tā, es uzmetot aci to pamanīju momentā. Un kāda jēga no $niks = mysql_real_escape_string($_GET['nick']);, ja pirms tam jau ir mysql_query("SELECT * FROM saturs WHERE nick='".$_GET['nick']."' ORDER BY id DESC"); ? :) Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.