« 1 2 3 »
Autor Zpráva
mimochodec
Profil
abc:
Tak jinak, uprav kód na:

Jestli mu to vypisuje to, co napsal, tak se zřejmě to php neprovádí.

roman_an1:
Máš to uvnitř <?php ?> ?
abc
Profil
roman_an1:
Dobře, zkopíruj sem tedy celý aktuální kód
roman_an1
Profil
jo tak to se taky neprovede..nic to nevypíse..ja zapomněl hvězdičku v kodu



<?php

  
  session_start();
 
  $login = $_SESSION['login'] ;
  $jmena = $_SESSION['login'] ;
  
   
 $query =  "SELECT * FROM vyrobky WHERE login = '$login'";
  $query2 =  "SELECT * FROM uzivatele WHERE login = '$jmena'";
 
 
  


 
$vysledek = mysql_query($query);
$vysledek2 = mysql_query($query2);





 echo "<table width=30% border=2 rules=none>"; 

 echo mysql_error(); 
while($clen2 = mysql_fetch_object($vysledek2)) {
  
  echo "<tr width='30%'>";  
  echo "<td >";  
   
   /*
    echo "<td width='10%'>" . $clen->login . "<td width='10%'> " . $clen->heslo . "<td width='10%'> " . $clen->email . "</td>";
     */
  /*   
     echo "<tr width='10%'><BR>"  . $clen2->jmeno . 
     
     "<tr width='10%'><BR>" . $clen2->ulice .  
     
     "<tr width='10%'><BR>" . $clen2->mesto .  
     "<tr width='10%'><BR>" . $clen2->psc .       
     "<tr width='10%'><BR>" . $clen2->telefon . 
    "</td>";  
   "</tr>";
  
    */
     echo '<strong>';
    echo"Adresa:";  echo '</strong>';
    
   
   
    echo "<tr >";  
    
     echo "<td width='10%'> " . $clen2->jmeno . "</td>"; 
        
  echo "</tr>";  
  
   echo "<tr >";  
   
     echo "<td width='10%'>" . $clen2->ulice . "</td>"; 
       
  echo "</tr>";  
   
   
    echo "<tr>";  
   
     echo "<td width='10%'>" . $clen2->psc . "</td>"; 
       
  echo "</tr>"; 
  
  
   echo "<tr>";  
   
     echo "<td width='10%'>" . $clen2->mesto . "</td>"; 
       
  echo "</tr>"; 
  
  
  
   echo "<tr>";  
   
     echo "<td width='10%'> tel: &nbsp&nbsp" . $clen2->telefon . "</td>"; 
       
  echo "</tr>";    
}
 echo "</table>";

  

echo "<table width=80% border=1 rules=none>";
 echo mysql_error(); 
while($clen = mysql_fetch_object($vysledek)) {
if(isset($_POST['id'])) {

        

   $sql= mysql_query("DELETE FROM vyrobky WHERE id2 =".intval($_POST['id'])); 
   header("location: editace_smazani.php");
  
    /*$sql= mysql_query ("DELETE FROM vyrobky WHERE id2 ") OR die(mysql_error()); ;     */
  
   }
   
   
   if(isset($_POST['mnozstvi'])) {

              
             

$sql = ("UPDATE vyrobky SET mnozstvi = ".intval($_POST['mnozstvi']) . " WHERE id2 = ".intval($_POST['id']) );
echo 'Zacatek SQL>>>'. $sql . '<<<Konec SQL';
 /*intval-převod řetězce na číslo*/

      header("location: editace_smazani.php");
   
   
   
  
    /*$sql= mysql_query ("DELETE FROM vyrobky WHERE id2 ") OR die(mysql_error()); ;     */
  
   }

  echo "<tr width='30%'>";  
   
   /*
    echo "<td width='10%'>" . $clen->login . "<td width='10%'> " . $clen->heslo . "<td width='10%'> " . $clen->email . "</td>";
     */
     echo "<td width='2%'>" . $clen->id2 . "</td>";  
     echo "<td width='2%'>" . $clen->cislo . "</td>"; 
       
    
    
     echo "<td width='90%'>" . $clen->nazev .  "<form action=editace_smazani.php method=post><input type=text name=mnozstvi value= $clen->mnozstvi  size=3><input type=submit name=upravit value=Upravit></form><form action=editace_smazani.php method=post><input type=hidden name=id value='$clen->id2'> <input type=submit name=smazat value=smazat></form></td>";
      
      
      
       
  echo "</tr>";
  
  
  
         
    
 
    
    
        
  
  

}
echo "</table>";



    

 




/*
  
  while($row = mysql_fetch_row($vysledek)) {

      echo "<tr><td>";       
           echo $row[1]."</td><BR><td>";
      
           
      }     */
      ?>
      

     
abc
Profil
roman_an1:
0. Začni formátovat text nějak normálně, logicky. Nenechávej mezi bloky kódu 10 řádek mezeru apod. Pokud to sám nesvedeš, tak si nainstaluj např. Netbeans, ve kterých můžeš formátovat automaticky přes klávesovou zkratu Alt+Shift+F
1. Zakomentuj na ř. 115 ten header
2. na řádek 105 dej echo $_POST['mnozstvi']
3. ř. 134 uprav na:
echo '<td width="90%">' . $clen->nazev;
echo'<form action = "editace_smazani.php" method="post">
<input type="text" name="mnozstvi" value="" size = "3"/>
<input type="submit" name="Upravit" value="Upravit"/>
</form>';
...Zbytek snad zvládneš podle tohoto vzoru. Doporučuju do dalšího echa
4. možná by nebylo od věci to celé smazat a napsat znovu a lépe ;)
mimochodec
Profil
abc:
Těch chyb je tam mnohem víc, první jsou hned tady:

  $login = $_SESSION['login'] ;
  $jmena = $_SESSION['login'] ;
  
 $query =  "SELECT * FROM vyrobky WHERE login = '$login'";
  $query2 =  "SELECT * FROM uzivatele WHERE login = '$jmena'";

Je to slepenec něčeho, co nemám sílu komentovat. Doporučoval bych smazat, trochu se tady po diskusi rozhlídnout (vyhledávání je užitečná věc) a začít znovu.
roman_an1
Profil
díky za rady :) no ono je to spíš ještě všechno ve fázi úprav předělávání..zítra se na to kouknu..a mám v tom zmatek..každopádně díky :)
roman_an1
Profil
abc:
tak už to mám, ale to celkem nevyřešilo můj problém s tou editací 



vypíše mi to tohlen..ale z toho vyplývá že to nevyhovuje..já nechci ať se mi to mění u všeho 
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 3 WHERE id2 = '71'<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 3 WHERE id2 = '72'<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 3 WHERE id2 = '73'<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 3 WHERE id2 = '74'<<
Šéva
Profil
Ahoj,
zkus tohle:

<?php
  session_start();
 
  $login = $_SESSION['login'] ;
  $jmena = $_SESSION['jmena'] ; 
   
 $query =  mysql_query("SELECT * FROM vyrobky WHERE login = '$login'");
  $query2 = mysql_query("SELECT * FROM uzivatele WHERE login = '$jmena'"); 

 echo "<table width=30% border=2 rules=none>"; 
 
while($clen2 = mysql_fetch_object($query)) 
{ 
  echo "<tr width='30%'>";  
  echo "<td >";   
     echo '<strong>';
    echo"Adresa:";  
    echo '</strong>';  
    echo "<tr >";   
     echo "<td width='10%'> " . $clen2->jmeno . "</td>";       
  echo "</tr>";  
   echo "<tr >";   
     echo "<td width='10%'>" . $clen2->ulice . "</td>";      
  echo "</tr>";   
    echo "<tr>";  
     echo "<td width='10%'>" . $clen2->psc . "</td>";      
  echo "</tr>"; 
   echo "<tr>";   
     echo "<td width='10%'>" . $clen2->mesto . "</td>";      
  echo "</tr>";  
   echo "<tr>";   
     echo "<td width='10%'> tel: &nbsp&nbsp" . $clen2->telefon . "</td>";      
  echo "</tr>";
}
 echo "</table>";  
 
echo "<table width=80% border=1 rules=none>";
while($clen = mysql_fetch_object($query)) 
{
if(isset($_POST['id'])) 
   { 
   $sql= mysql_query("DELETE FROM vyrobky WHERE id2 ='".intval($_POST['id'])."'"); 
   header("location: editace_smazani.php");  
   }  
if(isset($_POST['upravit'])) 
   {
    $sql = ("UPDATE vyrobky SET mnozstvi = '".intval($_POST['mnozstvi']) . "' WHERE id2 = '".intval($_POST['id'])."'");
      header("location: editace_smazani.php");  
   } 
  echo "<tr width='30%'>";   
     echo "<td width='2%'>" . $clen->id2 . "</td>";  
     echo "<td width='2%'>" . $clen->cislo . "</td>";   
     echo "<td width='90%'>" . $clen->nazev .  
     "<form action='editace_smazani.php' method='post'>
     <input type='text' name='mnozstvi' value='".$clen->mnozstvi."' size='3'>
     <input type='submit' name='upravit' value='Upravit'>
     </form>
     <form action='editace_smazani.php' method='post'>
     <input type='hidden' name='id' value='".$clen->id2."'>
     <input type='submit' name='smazat' value='smazat'>
     </form>
     </td>";      
  echo "</tr>";
}
echo "</table>";
?>

něco málo jsem tam poupravil a pokusil se to trošku naformátovat...
roman_an1
Profil
háže to chybu ... Warning: mysql_fetch_object(): supplied argument is not a valid MySQL result resource in
Šéva
Profil
roman_an1:
na jakém řádku? je to první while,nebo ten druhý... nevěděl jsem,jaká session má bejt ta $jmena,tak jsem ji jen typl,tak jestli neni problem v tom
roman_an1
Profil
Šéva:
tu seasion jsem předelal..tam musí být $jmena = $_SESSION['login'] ;
chyba na ř. 12 a ř.38
Šéva
Profil
roman_an1:
proč tedy máš 2 proměnné, kdyz jejich hodnoty jsou stejné? Máš ty $_SESSION vubec někde naplněné nějakou hodnotou?
roman_an1
Profil
tam ta seassion má správně být takhlenc: to je ještě pozůstatek toho kdy jsem ještě pořádně neuměl se seassion 

 session_start();
 
  $login = $_SESSION['login'] ;
  
   
 $query =  mysql_query("SELECT * FROM vyrobky WHERE login = '$login'");
  $query2 = mysql_query("SELECT * FROM uzivatele WHERE login = '$login'"); 



jj mám..přihlašovacím jménem 



Šéva:
právě potřebuju ten update ať mi to nemění u všeho..ale jen u toho řádku podle toho o které id2 se jedná
Šéva
Profil
Co teď

<?php
  session_start();
 
  $login = $_SESSION['login'] ;
   
 $query =  mysql_query("SELECT * FROM vyrobky WHERE login='$login'");
  $query2 = mysql_query("SELECT * FROM uzivatele WHERE login='$login'"); 
 
 echo "<table width='30%' border='2' rules='none'>"; 
 
while($clen2 = mysql_fetch_array($query2)) 
{ 
  echo "<tr width='30%'>";  
  echo "<td >";   
     echo '<strong>';
    echo"Adresa:";  
    echo '</strong>';  
    echo "<tr >";   
     echo "<td width='10%'>$clen2[jmeno]</td>";       
  echo "</tr>";  
   echo "<tr >";   
     echo "<td width='10%'>$clen2[ulice]</td>";      
  echo "</tr>";   
    echo "<tr>";  
     echo "<td width='10%'>$clen2[psc]</td>";      
  echo "</tr>"; 
   echo "<tr>";   
     echo "<td width='10%'>$clen2[mesto]</td>";      
  echo "</tr>";  
   echo "<tr>";   
     echo "<td width='10%'> tel: &nbsp&nbsp$clen2[telefon]</td>";      
  echo "</tr>";
}
 echo "</table>";  
 
echo "<table width='80%' border='1' rules='none'>";
while($clen = mysql_fetch_array($query)) 
{
if(isset($_POST['id'])) 
   { 
   $sql= mysql_query("DELETE FROM vyrobky WHERE id2 ='".intval($_POST['id'])."'"); 
   header("location: editace_smazani.php");  
   }  
if(isset($_POST['upravit'])) 
   {
    $sql = ("UPDATE vyrobky SET mnozstvi = '".intval($_POST['mnozstvi']) . "' WHERE id2 = '".intval($_POST['id'])."'");
      header("location: editace_smazani.php");  
   } 
  echo "<tr width='30%'>";   
     echo "<td width='2%'>$clen[id2]</td>";  
     echo "<td width='2%'>$clen[cislo]</td>";   
     echo "<td width='90%'>$clen[nazev]
     <form action='editace_smazani.php' method='post'>
     <input type='hidden' name='id' value='$clen[id2]'>
     <input type='text' name='mnozstvi' value='$clen[mnozstvi]' size='3'>
     <input type='submit' name='upravit' value='Upravit'>
     </form>
     <form action='editace_smazani.php' method='post'>
     <input type='hidden' name='id' value='$clen[id2]'>
     <input type='submit' name='smazat' value='smazat'>
     </form>
     </td>";      
  echo "</tr>";
}
echo "</table>";
?>

ještě jsem tam něco upravil
roman_an1
Profil
Šéva:
Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in
u ř.11 a u ř. 37



Šéva:
furt ta samá chyba
Šéva
Profil
udělej si echo na session
echo $login;
protože tohle už spíše vypadá na to,že to nemá žádnou hodnotu ta $login...
roman_an1
Profil
Šéva:
jo to vypíše co má..je k ní přiřazenej normálně ten login
Šéva
Profil
tak teď už mě jen napadá to, jestli jsou v tom dotazu správně napsaný tabulky, jestli při připojení do db rovnou změníš i výchozí databázi, do které se to má připojit a jako snad posledná nápad, jak jsou nastaveny sloupce pro login?
roman_an1
Profil
Šéva:
ee je to správně nastavené..předtím my to normálně i mazalo tam jak je DELETE..ale jen my nejde furt ta editace
Šéva
Profil
roman_an1:
do toho editu jsem napoprvé zapomněl přidat tento řádek:
<input type='hidden' name='id' value='$clen[id2]'>
kterej jsem tam pak v zápětí dal...

EDIT:
nahraď
if(isset($_POST['id']))
tímhle
if(isset($_POST['smazat']))
mimochodec
Profil
Šéva:
1. když uživatel není přihlášen, vygeneruješ <table></table>
2. proč předáváš ID osoby hiddenem, když ho máš v session?
3. co dělá header("location: editace_smazani.php"); za echem?
roman_an1
Profil
Šéva:
ee to vůbec nejede



roman_an1:
jenom potřebuju vědět jak má vypadat ten dotaz v tom UPDATE protože už jsem zkoušel fakt vše a nevím..jinak mi to všechno chodí..i v tom mojem funguje DELETE..jen potřebuju ten UPDATE
Šéva
Profil
mimochodec:
1. To se dá ošetřit podmínkou, zda session existuje
2. v te session je jen login uzivatele, ne ID
3. v čem je problém?

roman_an1:
můžeš sem dát znovu celý kód
roman_an1
Profil
roman_an1:
jelikož jsem ve fázi kdy zkusím fakt vše tak potřebuju radu v tomto:
mám takovýto dotaz:

$sql = ("UPDATE vyrobky SET mnozstvi = ".intval($_POST['mnozstvi']) . " WHERE id2 = ".intval($_POST['mnozstvi']) );
echo 'Zacatek SQL>>>'. $sql . '<<<Konec SQL';

no a na stránku při stisknutí tlačítka upravit mi to hodí toto:
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 1 WHERE id2 = 1<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 1 WHERE id2 = 1<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 1 WHERE id2 = 1<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 1 WHERE id2 = 1<<




kdž to mám takto:
$sql = ("UPDATE vyrobky SET mnozstvi = ".intval($_POST['mnozstvi']) . " WHERE id2 = ".intval($_POST['id']) );


tak to hodí toto:
Notice: Undefined index: id in D:\EasyPHP-5.3.9\www\editace_smazani.php on line 118
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 0<<
Notice: Undefined index: id in D:\EasyPHP-5.3.9\www\editace_smazani.php on line 118
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 0<<
Notice: Undefined index: id in D:\EasyPHP-5.3.9\www\editace_smazani.php on line 118
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 0<<
Notice: Undefined index: id in D:\EasyPHP-5.3.9\www\editace_smazani.php on line 118
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 0<<

no a 



Šéva:
no ale ja to budu mít jakožto takovéto řešení košíku..takže ja defakto v té tabulce budu mít více stejných loginů



<?php
  
  session_start();
 
  $login = $_SESSION['login'] ;
  
  
   
 $query =  "SELECT * FROM vyrobky WHERE login = '$login'";
  $query2 =  "SELECT * FROM uzivatele WHERE login = '$login'";
 
 
  


 
$vysledek = mysql_query($query);
$vysledek2 = mysql_query($query2);





 echo "<table width=30% border=2 rules=none>"; 

 echo mysql_error(); 
while($clen2 = mysql_fetch_object($vysledek2)) {
  
  echo "<tr width='30%'>";  
  echo "<td >";  
   
      echo '<strong>';
    echo"Adresa:";  echo '</strong>';
    
   
   
    echo "<tr >";  
    
     echo "<td width='10%'> " . $clen2->jmeno . "</td>"; 
        
  echo "</tr>";  
  
   echo "<tr >";  
   
     echo "<td width='10%'>" . $clen2->ulice . "</td>"; 
       
  echo "</tr>";  
   
   
    echo "<tr>";  
   
     echo "<td width='10%'>" . $clen2->psc . "</td>"; 
       
  echo "</tr>"; 
  
  
   echo "<tr>";  
   
     echo "<td width='10%'>" . $clen2->mesto . "</td>"; 
       
  echo "</tr>"; 
  
  
  
   echo "<tr>";  
   
     echo "<td width='10%'> tel: &nbsp&nbsp" . $clen2->telefon . "</td>"; 
       
  echo "</tr>";    
}
 echo "</table>";

  

echo "<table width=80% border=1 rules=none>";
 echo mysql_error(); 

while($clen = mysql_fetch_object($vysledek)) {
if(isset($_POST['id'])) {

        

   $sql= mysql_query("DELETE FROM vyrobky WHERE id2 =".intval($_POST['id'])); 
  header("location: editace_smazani.php");     
   
   
   }
   
   
   if(isset($_POST['mnozstvi'])) {

              
             

$sql = ("UPDATE vyrobky SET mnozstvi = ".intval($_POST['mnozstvi']) . " WHERE id2 = ".intval($_POST['id']) );
echo 'Zacatek SQL>>>'. $sql . '<<<Konec SQL';

   
    
   }

  echo "<tr width='30%'>";  
   
  
     echo "<td width='2%'>" . $clen->id2 . "</td>";  
     echo "<td width='2%'>" . $clen->cislo . "</td>"; 
       
    
    
     echo "<td width='90%'>" . $clen->nazev .  "<form action=editace_smazani.php method=post><input type=text name=mnozstvi value= $clen->mnozstvi  size=3><input type=submit name=upravit value=Upravit></form><form action=editace_smazani.php method=post><input type=hidden name=id value='$clen->id2'> <input type=submit name=smazat value=smazat></form></td>";
      
  echo "</tr>";
 

}
echo "</table>";

      ?>
mimochodec
Profil
Šéva:

roman_an1:
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 0<<

A ty máš nějaké řádky, kde je id2 = 0?
Pokusil ses během toho kopírování kousků kódu taky přemýšlet, co to vlastně dělá?

Šéva:
2. v te session je jen login uzivatele, ne ID // ok. a myslíš, že je fajn, když jako uživatel s ID=1 můžu smazat výrobek, který patří uživateli ID=2?
3. v čem je problém? // Nejčastější potíže s PHP (FAQ) » headers already sent…
roman_an1
Profil
ne nemám tam řádek id=0 to je právě že tam nesedí dotaz

ne to pravě, že nemůže být smazanej..když ho ani nevidí..proto tam mám že musí být přidanej login:)
mimochodec
Profil
roman_an1:
ne nemám tam řádek id=0 to je právě že tam nesedí dotaz

A co s tím budeš dělat? Proč je tam ta nula?
roman_an1
Profil
mimochodec:
no jako ja vím jak aby mi to vypsalo číslo řádku ale vygeneruje ale změní to postupně u všech, ale já potřebuju jenom ten jeden daný řádek

když to změním takto:
$sql = ("UPDATE vyrobky SET mnozstvi = ".intval($_POST['mnozstvi']) . " WHERE id2 = ".intval($clen->id2) );

zapsalo by se to takto: ale já nechci aby se mi ta hodnota zapsala do všech řádků
Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 79<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 80<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 81<<Zacatek SQL>>>UPDATE vyrobky SET mnozstvi = 6 WHERE id2 = 82<<
Šéva
Profil
mimochodec:
2. to dobře není,ale tohle by mohlo nastat ve chvíli, kdyby něměl ošetřené že uživatel ten a ten může vidět pouze to a to atd, případně, kdyby měl políčko s ID editovatelné...
3. header jsem snad ještě nepoužíval, takže jsem to nevěděl, nebo zapomněl...


roman_an1:
a už jsi si tam upravil to co jsem ti říkal s tím IDčkem, jak se to mimochodcovi moc nelíbí a upravil tu podmínku?
roman_an1
Profil
Šéva:
teď momentálně nevím co
« 1 2 3 »

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0