Как объяснил scompt.com , запрос может завершиться ошибкой. Используйте этот код, чтобы получить ошибку запроса или правильный результат:
$username = $_POST['username'];
$password = $_POST['password'];
$result = mysql_query("
SELECT * FROM Users
WHERE UserName LIKE '".mysql_real_escape_string($username)."'
");
if($result)
{
while($row = mysql_fetch_array($result))
{
echo $row['FirstName'];
}
} else {
echo 'Invalid query: ' . mysql_error() . "\n";
echo 'Whole query: ' . $query;
}
Для получения дополнительной информации см. Документацию для mysql_query()
.
Фактической ошибкой были одиночные кавычки, так что переменная $username
не анализировалась. Но вы действительно должны использовать mysql_real_escape_string($username)
, чтобы избежать инъекций SQL.
Элемент управления Label поддерживает прозрачность. Просто дизайнер не позволит вам правильно разместить ярлык. Элемент управления PictureBox не является элементом управления контейнером, поэтому форма становится родителем метки. Итак, вы видите фон формы.
Легко исправить, добавив немного кода в конструктор формы. Вам нужно будет изменить свойство родительского ярлыка и пересчитать его местоположение, так как оно теперь относительно поля изображения вместо формы. Например:
public Form1() {
InitializeComponent();
var pos = this.PointToScreen(label1.Location);
pos = pictureBox1.PointToClient(pos);
label1.Parent = pictureBox1;
label1.Location = pos;
label1.BackColor = Color.Transparent;
}
Похоже на это во время выполнения:
[/g0]
Другой подход - это решить дизайн времени. Это просто принимает атрибут. Добавьте ссылку на System.Design и добавьте класс в свой проект, вставьте этот код:
using System.ComponentModel;
using System.Windows.Forms;
using System.Windows.Forms.Design; // Add reference to System.Design
[Designer(typeof(ParentControlDesigner))]
class PictureContainer : PictureBox {}
Используя Visual Studio с Windows Form, вы можете применять прозрачность к ярлыкам или другим элементам, добавляя с помощью System.Drawing; в Form1.Designer.cs Таким образом, у вас будет прозрачность, доступная на панели «Свойства» (в «Внешний вид в BackColor»). Или просто отредактируйте код в Designer.cs this.label1.BackColor = System.Drawing.Color.Transparent;
Вы можете нарисовать текст с помощью TextRenderer, который будет рисовать его без фона:
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
TextRenderer.DrawText(e.Graphics,
overallpercent.ToString("#0") + "%",
this.Font,
new Point(10, 10),
Color.Red);
}
Когда изменяется общее значение, обновите pictureBox:
pictureBox1.Refresh();
Вы также можете использовать Graphics. DrawString, но TextRenderer.DrawText (с использованием GDI) работает быстрее, чем DrawString (GDI +)
Вы можете просто использовать
label1.Parent = pictureBox1;
label1.BackColor = Color.Transparent; // You can also set this in the designer, as stated by ElDoRado1239
Легко для вашего дизайна. Вы можете разместить свою метку внутри панели. и установить фоновое изображение панели - это то, что вы хотите. установленный фон метки прозрачен